博弈题,nim博弈
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <set>
#define MAX 250
using namespace std;
int main()
{
char s;
int a[1004];
int len=0;
while(1)
{
scanf("%d%c",&a[len++],&s);
if(s=='\n')break;
}
if(len%2)a[len]=a[len-1]+1,len++;
sort(a,a+len);
int ans=0;
for(int i=0;i<len;i+=2)
{
ans^=(a[i+1]-a[i]-1);
}
if(ans!=0)
{
for(int i=1;i<len;i++)
{
int k;
k=ans^(a[i]-a[i-1]-1);
if(k<(a[i]-a[i-1]-1))
{
printf("%d %d\n",a[i-1],a[i]-k-1);
break;
}
if(a[i+1]>a[i-1]+k+1)
{
printf("%d %d\n",a[i],a[i-1]+k+1);
break;
}
}
}
else printf("-1\n");
return 0;
}