A. Bear and Prime 100

原题链接

题解

1.如果是一百以内的合数,那么一定可以由两个不大于50的质数组成
2.交互题关键就在于询问和返回的结果

cout<<''';
fflush(stdout);

cin>>...

code

#include<bits/stdc++.h>
using namespace std;
bool check(int x)
{
    for(int i=2;i*i<=x;i++)
    {
        if(x%i==0) return 0;
    }
    return 1;
}


int main()
{
    int cnt=0;
    for(int i=2;i<=50;i++)
    {
        if(check(i))
        {
            cout<<i<<'\n';
            fflush(stdout);

            string str;
            cin>>str;
            if(str=="yes")
            {
                cnt++;
                if(cnt>1)
                {
                    puts("composite");
                    return 0;
                }
                if(i*i>100) continue;
                cout<<i*i<<'\n';
                fflush(stdout);

                cin>>str;
                if(str=="yes") cnt++;
            }
        }
        if(cnt>1)
        {
            puts("composite");
            return 0;
        }
    }
    puts("prime");
    return 0;
}

posted @ 2024-06-17 17:35  纯粹的  阅读(11)  评论(0)    收藏  举报