hdu2138 How many prime numbers

来源:互联网 发布:欧盟医疗器械数据库 编辑:程序博客网 时间:2024/06/05 08:41

hdu2138 How many prime numbers     题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2138

基础数学

题目大意:输入正整数n,然后输入n个数。对这些数的限制里有这么一句Each integer won’t exceed 32-bit signed integer意思是这些数有符号且不超32位。其数值表达范围为:0 ~ 4294967295数据范围不小,打表会T.L.E,所以反过头来用最原始的办法----找有无因数。

以下是代码:

#include<stdio.h>#include<math.h>int main(){    int t,n,flag,p,i,j,sum;    while(scanf("%d",&t)!=EOF)    {    sum=0;        for(i=0;i<t;i++)        {            scanf("%d",&n);            flag=1;            for(j=2;j<=sqrt(n);j++)            {                if(n%j==0)                {                flag=0;                break;                }            }            if(flag)sum++;        }        printf("%d\n",sum);    }    return 0;}

PS:开始总想着打表,费了点时间……








原创粉丝点击