給你一個
首先我們觀察發現,
我們考慮構造一個方案使得有
首先如果第1個放了黑色珠子,那麼第
我們假設第i個放黑色,那麼我們就可以每次隔
然後我們發現從i出發最少進行
#include
#include
#include
#include
#include
#include
using namespace std;
int n;
int gcd(int a,int b)
{return a%b==0?b:gcd(b,a%b);}
int main()
{
scanf("%d",&n);
n=n/2+1;
int Gcd=gcd(n+1,2*n-1);
int L=(long long)(n+1)*(2*n-1)/Gcd/(n+1);
printf("%d",(2*n-1)/L*(L/2)+1);
return 0;
}