#4390: C++超時問題如何解決?


f612054 (OGC)

學校 : 不指定學校
編號 : 13811
來源 : [122.146.93.152]
最後登入時間 :
2018-04-11 10:31:59
a007. 判斷質數 | From: [220.131.67.97] | 發表日期 : 2010-10-14 22:36

#include <cstdlib>
#include <iostream>
using namespace std;


int main(int argc, char *argv[])
{
    int x=0,c=2,a;
    while(cin>>x){     
            for(c=2;x%c!=0;c++){}
                  if (x==c) cout<<"值數\n";
                  else cout<<"非值數\n" ;
            }     
    return EXIT_SUCCESS;
}
 
#4391: Re:C++超時問題如何解決?


leopan0922 (zz)

學校 : 臺北市立成功高級中學
編號 : 6612
來源 : [140.113.225.106]
最後登入時間 :
2016-08-15 15:44:07
a007. 判斷質數 | From: [219.70.171.51] | 發表日期 : 2010-10-14 22:45

#include
#include
using namespace std;


int main(int argc, char *argv[])
{
    int x=0,c=2,a;
    while(cin>>x){     
            for(c=2;x%c!=0;c++){}
                  if (x==c) cout<<"值數\n";
                  else cout<<"非值數\n" ;
            }     
    return EXIT_SUCCESS;
}
判斷到根號x就好了
 
#4393: Re:C++超時問題如何解決?


f612054 (OGC)

學校 : 不指定學校
編號 : 13811
來源 : [122.146.93.152]
最後登入時間 :
2018-04-11 10:31:59
a007. 判斷質數 | From: [220.131.67.97] | 發表日期 : 2010-10-14 23:49

#include<cstdlib>
#include<iostream>
using namespace std;


int main(int argc, char *argv[])
{
    int x=0,c=2,a;
    while(cin>>x){     
            for(c=2;x%c!=0;c++){}
                  if (x==c) cout<<"值數\n";
                  else cout<<"非值數\n" ;
            }     
    return EXIT_SUCCESS;
}
判斷到根號x就好了
 
判斷到根號x 是for那邊?還是if? 

 
#4401: Re:C++超時問題如何解決?


leopan0922 (zz)

學校 : 臺北市立成功高級中學
編號 : 6612
來源 : [140.113.225.106]
最後登入時間 :
2016-08-15 15:44:07
a007. 判斷質數 | From: [219.70.171.51] | 發表日期 : 2010-10-16 22:24

#include
#include
using namespace std;


int main(int argc, char *argv[])
{
    int x=0,c=2,a;
    while(cin>>x){     
            for(c=2;x%c!=0;c++){}
                  if (x==c) cout<<"值數\n";
                  else cout<<"非值數\n" ;
            }     
    return EXIT_SUCCESS;
}
判斷到根號x就好了
 
判斷到根號x 是for那邊?還是if? 

迴圈改成c<=sqrt(x);
 
#4578: Re:C++超時問題如何解決?


fire861224 (What he does is Lin)

學校 : 臺北市私立延平高級中學
編號 : 14625
來源 : [203.72.178.252]
最後登入時間 :
2012-12-07 17:38:09
a007. 判斷質數 | From: [59.112.113.71] | 發表日期 : 2010-11-21 18:50

#include<iostream
using namespace std;


int main(int argc, char *argv[])
{
    int x=0,c=2,a;
    while(cin>>x){     
            for(c=2;x%c!=0;c++){}
                  if (x==c) cout<<"值數\n";
                  else cout<<"非值數\n" ;
            }     
    return 0;
}
應該可以了
 
ZeroJudge Forum