Codeforces Round #666 (Div. 2) D - Stoned Game (博弈,思维)

tech2025-10-02  2

关键在于,不能选择上一个人选择的堆。

考虑有一个特别大的堆mx,他大于所有其他堆的总和,那么先手只要一直拿这个堆就行如果上述条件不成立,那么双方博弈过程中肯定都想拿最大的那个堆,比赛过程是确定的,直接奇数偶数。。。 void solve() { int n;cin>>n; int sum=0,mx = 0; rpp(i,n) { int x;cin>>x; sum+=x; mx=max(mx,x); } if(mx>sum-mx) cout<<"T"; else { if(sum%2) cout<<"T"; else cout<<"HL"; } cout<<endl; }
最新回复(0)