题解 CF679A 【Bear and Prime 100】

其实我根本不知道交互提中的flush是啥,所以我根本没用fflush(stdout)

如果一个数可以分解为两个及以上的质因数,那就是合数。

证明:

对于任意一个合数X,小学理论已经证明出X可以被某个质数整除,将X除以这个质数,得数如果是质数,那么X有两个质因数,否则,将X除以这个质数的结果继续分解,最后会有 >= 2个质因数

但对于 p\large p 为质数,将C设为形如 pn\Large p ^ n的数,将C分解质因数,可得出:

C=pn\LARGE C = p ^ n

因此,C只有一个质因数

所以对于平方数是个问题,例如9,3 * 3 = 9所以9为合数,但3只是一个质因数,所以要加3, 5, 9到表中

我不会fflush,哇:

#include <iostream>
using namespace std;

char ch[5];

const int zs[20] = {0, 2, 3, 4, 5, 7, 9, 11, 13, 17, 19, 23, 25, 29, 31, 37, 41, 43, 47, 49};

int main()
{
    int cnt = 0;
    for(register int i = 1; i <= 19; i++)
    {
        cout << zs[i] << endl;
        cin >> ch;
        if(ch[0] == 'y')
        {
            cnt++;
        }
        if(cnt >= 2)
        {
            cout << "composite\n";
            return 0;
        }
    }
    cout << "prime\n";
    return 0;
}
posted @   HappyBobb  阅读(4)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示