#include<bits/stdc++.h>
using namespace std;
struct data
{
int x,x1;
}s[10000];
int f(int x,int b)
{
if(x==1) return b;
else return ((f(x-1,b)*37+33031)%b)+1;
}
bool cmp(data a,data b)
{
if(a.x!=b.x) return a.x>b.x;
else return a.x1<b.x1;
}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
s[i].x=f(i,n);
s[i].x1=i;
}
sort(s,s+n,cmp);
cout<<s[0].x1;
return 0;
}
求大佬帮分析一下