#include <iostream>
#include <vector>
#include <algorithm>
#define KM 10
using namespace std;
int main()
{
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
ios::sync_with_stdio(false);
int N;
cin >> N;
vector<int>s(N);
for(int i = 0; i != N; ++i) cin >> s[i];
int copia[N];
for(int i = 0; i != N; ++i) copia[i] = s[i];
bool v = false;
long int sum = 0;
for(int j = 0; j < N; ++j)
{
for(int i = 0; i < N; ++i)
{
sum += s[i]- KM;
v = true;
if(sum < 0)
{
rotate(s.begin(), s.begin() + 1, s.end());
sum = 0;
v = false;
break;
}
}
if(sum == 0 && v == true)
break;
}
long int res = 1;
for(long int i = 0; i < N; i++)
{
if(copia[i] == *s.begin())
{
res += i;
break;
}
}
cout << res;
}
Non riesco a capire perché questo codice da meno di 30 / 100, qualcuno potrebbe darmi una mano?