码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Round #573 (Div. 2)

时间:2019-07-13 13:50:33      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:namespace   round   ORC   amp   names   gif   pen   lse   event   

D. Tokitsukaze, CSL and Stone Game

题意:有n堆石头,每人每次只能去一颗石子,若轮到当前人没任何一堆石子可以取或当前人取到后剩下有俩堆石子个数相同则当前人输;

给定石子序列。

分析:1、若有类似“2 3 3 ”则后手胜,因为有这个序列就必须在这个序列中去石子(因为如果在这个序列以外取子,则会导致输的后者情况),但在这个序列中取不到可解情况,所以该状态为必败态;

    2、若序列中有俩对相同的石子,则后手胜;

   3、除1、2情况外就把利用sum+起来,每个加就+a[i]-(i+1)    为了把他提到前面他不能再动的最优状态(因为俩者都采取最优策略!!!)

技术图片
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[100005];
int main(){
    int n;
    ll sum=0;
    cin>>n;
    
    for(int i=1;i<=n;i++)
        cin>>a[i],sum+=a[i];
    sort(a+1,a+1+n);
    int countt=0;
    for(int i=1;i<n;i++){
        if(a[i]==a[i+1]){
            if(a[i]==0||(i>1&&a[i-1]+1==a[i])||++countt>1){
                return puts("cslnb"),0;
            }
        }
    }
    sum-=n*(n-1)/2;
    if(sum%2==0)
        puts("cslnb");
    else
        puts("sjfnb");
    return 0;
    
}
View Code

 

Codeforces Round #573 (Div. 2)

标签:namespace   round   ORC   amp   names   gif   pen   lse   event   

原文地址:https://www.cnblogs.com/starve/p/11180276.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!