1 条题解

  • 0
    @ 2025-8-24 21:20:40

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar hilsinleri
    拜月有香空惹袖,惜花无泪可沾衣。

    搬运于2025-08-24 21:20:39,当前版本为作者最后更新于2017-03-05 09:10:29,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    感觉楼下们说的不是很详细,所以最为一个蒟蒻,发一个有说明的题解。

    本题考数学。

    首先要知道唯一分解定理:一个数能且只能分解为一组质数的乘积。可知,若输入的数满足题目条件,他就只能分解为两个质数的乘积。所以在比他小且大于1的自然数中,只有那两个数能整除它,之间不可能再有任何合数或质数能整除它了,因为最小的能整除它的合数已经是他本身了。

    所以代码就很容易实现了

    #include<cstdio>
    int main()
    {
        int n;
        scanf("%d",&n);
        for(int i=2;i<=n;++i)
                if(n%i==0)
                {
                        printf("%d",n/i);
                        return 0;
                }
    }
    
    • 1

    信息

    ID
    77
    时间
    1000ms
    内存
    128MiB
    难度
    2
    标签
    递交数
    2
    已通过
    2
    上传者