题目大意:
给你一个
解题思路:
首先我们观察发现,
我们考虑构造一个方案使得有
首先如果第1个放了黑色珠子,那么第
然后我们发现从i出发最少进行
AC代码:
#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; }