804 石子游戏 II

// 804 石子游戏 II.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

/*
http://oj.daimayuan.top/course/22/problem/738

Alice 和 Bob 正在玩一个关于石子的游戏。
共有 n 堆石子,其中第 i堆最初含有 ai 个石子。
他们轮流执行下列操作之一,从 Alice 开始。
把一堆个数为奇数的石子分成两堆,两堆都不能空。

把两堆个数为偶数的石子合成一堆。
不能执行任何操作的人将输掉游戏。
假设 Alice 和 Bob 都足够聪明,你知道谁会赢得游戏吗?

输入格式
第一行包含一个整数 n(1≤n≤106)

第二行包含 n个正整数 a1,…,an(1≤a1,…,an≤109)

输出格式
Alice 或 Bob,表示最终赢家

样例输入
2
2 2
样例输出
Alice
*/


#include <iostream>

using namespace std;


typedef long long ll;


int n;


int main()
{
	scanf("%d",&n);
	int odd = 0, one = 0;
	for (int i = 1; i <= n; i++) {
		int x;
		scanf("%d",&x);
		if (x % 2 == 1) odd++;
		if (x == 1) one++;
	}
	if (one != n) odd++;
	if ((odd + n) % 2 != 0) {
		puts("Alice");
	}
	else {
		puts("Bob");
	}


	return 0;
}
 

posted on 2024-12-19 15:39  itdef  阅读(20)  评论(0)    收藏  举报

导航