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(贪心)

codefroces Round #201.a--Difference Row

Codeforces Global Round 19

Codeforces Educational Codeforces Round 67