[問題] 判斷是否質數演算法會逾時
下面是我的程式碼,在線上judge時執行時間太久了
有什麼地方可以修改或有更好的演算法可以用嗎?
希望大家給個建議!謝謝~
修正過後有點小問題,持續逾時中 = ="
=====================================================
#include <stdio.h>
#include <math.h>
int main(void)
{
int x,y,i,m=0;
while(scanf("%d",&x)!=EOF)
{
y=(int)(sqrt(x));
for(i=2;i<=y;i++)
{
if(x%i==0)
{
m=1;
printf("非質數\n");
break;
}
}
if(m==0)
printf("質數\n");
m=0;
}
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.120.90.174
推
07/22 18:09, , 1F
07/22 18:09, 1F
→
07/22 18:23, , 2F
07/22 18:23, 2F
→
07/22 18:23, , 3F
07/22 18:23, 3F
→
07/22 18:26, , 4F
07/22 18:26, 4F
→
07/22 18:30, , 5F
07/22 18:30, 5F
→
07/22 18:31, , 6F
07/22 18:31, 6F
→
07/22 18:35, , 7F
07/22 18:35, 7F
→
07/22 18:40, , 8F
07/22 18:40, 8F
推
07/22 18:44, , 9F
07/22 18:44, 9F
→
07/22 18:46, , 10F
07/22 18:46, 10F
→
07/22 18:47, , 11F
07/22 18:47, 11F
推
07/22 18:57, , 12F
07/22 18:57, 12F
→
07/22 19:01, , 13F
07/22 19:01, 13F
推
07/22 19:12, , 14F
07/22 19:12, 14F
→
07/22 19:12, , 15F
07/22 19:12, 15F
→
07/22 19:16, , 16F
07/22 19:16, 16F
推
07/22 19:24, , 17F
07/22 19:24, 17F
推
07/22 19:45, , 18F
07/22 19:45, 18F
→
07/22 19:46, , 19F
07/22 19:46, 19F
推
07/22 20:50, , 20F
07/22 20:50, 20F
→
07/22 21:39, , 21F
07/22 21:39, 21F
推
07/23 17:31, , 22F
07/23 17:31, 22F
→
07/23 17:32, , 23F
07/23 17:32, 23F
推
07/23 17:49, , 24F
07/23 17:49, 24F
→
07/23 17:49, , 25F
07/23 17:49, 25F
→
07/23 17:58, , 26F
07/23 17:58, 26F
→
07/23 17:59, , 27F
07/23 17:59, 27F
→
07/23 17:59, , 28F
07/23 17:59, 28F
※ 編輯: SiriusJinn 來自: 140.120.90.174 (07/23 18:00)
→
07/23 18:01, , 29F
07/23 18:01, 29F
推
07/23 18:16, , 30F
07/23 18:16, 30F
→
07/23 18:17, , 31F
07/23 18:17, 31F
→
07/23 18:18, , 32F
07/23 18:18, 32F
→
07/23 18:19, , 33F
07/23 18:19, 33F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章