码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Round #492 (Div. 2) [Thanks, uDebug!] — 赛后补题

时间:2018-06-25 15:10:24      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:比较   有关   lin   sizeof   bsp   signed   problem   sign   TE   

B. World Cup

题解:同一个位置的访问时间是 time = i - 1 + k * n(每秒向前移动一步,初始时刻是0),从每个位置的出去时间满足( i - 1 + k * n >= a[ i ] ),然后解出满足不等式的最小的k,代入( i - 1 + k * n),就是从该位置出去的时刻,那么答案就是所有位置中出去时间最早的位置。因为time的大小只和k有关,所以可以直接比较k的大小。

PS:2000人的题FST了,真是气啊。除法中向上取整,分母加上 n - 1,避免判断!!!!!

#include<bits/stdc++.h>
#define ll long long
#define P pair<int,int>
#define pb push_back
#define lson root << 1
#define INF (int)2e9 + 7
#define maxn (int)1e5 + 7
#define rson root << 1 | 1
#define LINF (unsigned long long int)1e18
#define mem(arry, in) memset(arry, in, sizeof(arry))
using namespace std;

int n;
int a[maxn];

int main()
{
    cin >> n;
    int res = INF, ans;
    for(int i = 1; i <= n; i++){
        cin >> a[i];
        int y = (a[i] - i + n) / n;
        if(res > y){
            res = y;
            ans = i;
        }
    }
    cout << ans << endl;
    return 0;
}

 

Codeforces Round #492 (Div. 2) [Thanks, uDebug!] — 赛后补题

标签:比较   有关   lin   sizeof   bsp   signed   problem   sign   TE   

原文地址:https://www.cnblogs.com/zgglj-com/p/9223788.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!