社区讨论

有关超时的问题

P1579哥德巴赫猜想(升级版)参与者 3已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mi5hd62m
此快照首次捕获于
2025/11/19 12:06
4 个月前
此快照最后确认于
2025/11/19 12:06
4 个月前
查看原帖
CPP
#include<stdio.h>
#include<math.h>
bool su(int a)
{
    int h;
    for(h=2;h<sqrt(a);h++)
    {
        if(a%h==0)    
            return false;
    }
    return true;
}
int main()
{
    int a,i,j=0,k,x[100000],p,s1,s2,s3,sum;
    scanf("%d",&a);
    for(i=2;i<a;i++)
    {
        if(su(i)!=0)
        {    i=x[j];
            j++;
        }
    }
    for(i=0;i<j;i++)
    {
        for(k=0;k<j;k++)
        {
            for(p=0;p<j;p++)
            {
                sum=i+k+p;
                if(sum==a)
                {
                    s1=i;
                    s2=k;
                    s3=p;
                    break;
                }
                else
                    continue;
            } 
        }
    }
    printf("%d %d %d",s1,s2,s3);
    return 0;
 } 
不管是编译器还是洛谷都是超时,想请教一下为什么

回复

2 条回复,欢迎继续交流。

正在加载回复...