Competition Against a Robot

Competition Against a Robot

https://ac.nowcoder.com/acm/contest/12548/D

图片说明
题意:输入n、k,问对任意长度为n,值在上的序列,给你一个p,然后通过事先和队友讲好的方案将序列内的某个数+1然后对k取余,接着把修改后的序列给队友,让队友猜,猜不对就输。

思路:
将k^n个状态映射到n个集合的权重组合就可解

MyCode:

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e6+7,maxm=2e5+7;
typedef long long int ll;
typedef unsigned long long ull;
int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int Q;
    ll n,k,gcd;
    cin>>Q;
    while(Q--) {
        cin>>n>>k;
        while(n!=1) {
            gcd=__gcd(n,k);
            if(gcd==1) break;
            n/=gcd;
        }
        if(n==1) cout<<"HUMAN\n";
        else cout<<"ROBOT\n";
    }
    return 0;;
}
全部评论

相关推荐

牛油果甜奶昔:别的先不说,牛客还能内推护士?
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务