#1372: TLE


B88000005 (喔~~!!XD)

學校 : 國立內壢高級中學
編號 : 4538
來源 : [118.167.234.168]
最後登入時間 :
2021-05-12 14:50:32
d120. 10699 - Count the factors -- UVa10699 | From: [220.138.47.205] | 發表日期 : 2009-02-10 20:09

好奇怪= =這題這麼難都沒有人問...

我用了好幾種方法...

但是全部都沒過= =""...

我的程式碼:

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    int q=0;
    while(scanf("%d",&q),q){                    //q為輸入的數
        printf("%d : ",q);                      //先輸出前半段
        int k=0;                                //k為答案(後半段)
        if(q%2==0){                             //先判斷唯一偶數的質數
            q/=2;
            k++;
            while(q%2==0){
                q/=2;
            }
        }
        for(int j=3;j<=q;j+=2){                 //j為質數(未判斷的)
            if(j>sqrtf(q)&&k==0){               //判斷輸入的q是否為質數
                k++;
                break;
            }
            int g=1;                            //g=1的話j就是質數
            if(j>8){
                for(int i=3;i<=sqrtf(j);i+=2){  //用i判斷j是否為質數
                    if(j%i==0){
                        g=0;
                        break;
                    }
                }
            }
            if(g==1&&q%j==0){
                q/=j;
                k++;
                while(g==1&&q%j==0){
                    q/=j;
                }
            }
        }
        printf("%d\n",k);
    }
    return 0;
}

 
#1373: Re:TLE


B88000005 (喔~~!!XD)

學校 : 國立內壢高級中學
編號 : 4538
來源 : [118.167.234.168]
最後登入時間 :
2021-05-12 14:50:32
d120. 10699 - Count the factors -- UVa10699 | From: [220.138.47.205] | 發表日期 : 2009-02-10 20:11

不好意思= =謝謝各位..過了 
#1442: Re:TLE


frsnic (表面的和平)

學校 : 國立臺中第二高級中學
編號 : 2842
來源 : [114.24.230.139]
最後登入時間 :
2022-10-01 22:10:40
d120. 10699 - Count the factors -- UVa10699 | From: [140.111.76.71] | 發表日期 : 2009-02-26 21:49

這一題只有用6ms是怎麼算的阿?

是一開始就做好質數表嗎?

因為我都已經用Sieve of Eratosthenes做了.... ><

 
#1444: Re:TLE


morris1028 (碼畜)

學校 : 國立花蓮高級中學
編號 : 3529
來源 : [114.37.59.62]
最後登入時間 :
2021-07-12 19:00:43
d120. 10699 - Count the factors -- UVa10699 | From: [118.160.206.22] | 發表日期 : 2009-02-27 17:21

這一題只有用6ms是怎麼算的阿?

是一開始就做好質數表嗎?

因為我都已經用Sieve of Eratosthenes做了.... ><

(6ms) 

我只有建出1000以內的質數來判斷,如果無法整除到最後為1 那麼我必定知道它為一個質數 輸出它

 
#2776: Re:TLE


YogiBear (test)

學校 : 國立臺中技術學院
編號 : 9150
來源 : [1.168.28.108]
最後登入時間 :
2023-08-20 22:48:07
d120. 10699 - Count the factors -- UVa10699 | From: [114.46.103.99] | 發表日期 : 2009-11-19 02:01

這一題只有用6ms是怎麼算的阿?

是一開始就做好質數表嗎?

因為我都已經用Sieve of Eratosthenes做了.... ><


噗  我用 Basic 沒建表,剛好 6ms 
ZeroJudge Forum