马蜂良好过样例 0pts 求条
查看原帖
马蜂良好过样例 0pts 求条
664034
_xxxxx_楼主2024/8/5 20:31

rt。

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 3e5 + 10;
int n, a[N];
int min_wr()
{
    int i = 1, j = 2, k = 1;
    while(i < n && j < n && k < n)
    {
        if(a[(i + k) % n] == a[(j + k) % n]) k++;
        else
        {
            if(a[(i + k) % n] > a[(j + k) % n]) i += (k + 1);
            else j += (k + 1);
            if(i == j) i++;
            k = 0;
        }
    }
    return min(i, j);
}
signed main()
{
    cin >> n;
    for(int i = 1; i <= n; i++) cin >> a[i];
    int num = min_wr();
    // cout << num << endl;
    for(int i = 1; i <= n; i++)
    {
        if(i + num <= n) cout << a[i + num] << " ";
        else cout << a[i + num - n] << " ";
    }
    return 0;
}
2024/8/5 20:31
加载中...