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();
for(int i = 1; i <= n; i++)
{
if(i + num <= n) cout << a[i + num] << " ";
else cout << a[i + num - n] << " ";
}
return 0;
}