Codeforces Round #201 (Div. 1) / 346A Alice and Bob
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #201 (Div. 1) / 346A Alice and Bob相关的知识,希望对你有一定的参考价值。
#include <cstdio> #include <algorithm> using namespace std; int gcd(int a,int b) { return b?gcd(b,a%b):a; } int n[100+10]; int main() { int t,maxn = 0; scanf("%d",&t); for(int i=0; i<t; i++) { scanf("%d",&n[i]); maxn = max(maxn,n[i]); } int high=maxn; for(int i=0; i<t-1; i++) { for(int j=i+1; j<t; j++) { int tem = gcd(n[i],n[j]); maxn = gcd(maxn,tem); } } int movestep = high/maxn - t; if(movestep&1) { printf("Alice\n"); } else { printf("Bob\n"); } return 0; }
一个从1~n的自然数集合,U,若一集合V,|V|<|U|,且元素∈V,all∈U,则需要再添加多少元素,有U 等价于 V。
元素个数:num = max in V / ged of all V - |V|.
以上是关于Codeforces Round #201 (Div. 1) / 346A Alice and Bob的主要内容,如果未能解决你的问题,请参考以下文章
[ACM]Codeforces Round #534 (Div. 2)
Codeforces Round #519 by Botan Investments翻车记
Codeforces Round #726 (Div. 2) B. Bad Boy(贪心)