ACM入门题

How many prime numbers

Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 10282 Accepted Submission(s): 3347
 
Problem Description
Give you a lot of positive integers, just to find out how many prime numbers there are.
 
Input
There are a lot of cases. In each case, there is an integer N representing the number of integers to find. Each integer won’t exceed 32-bit signed integer, and each of them won’t be less than 2.
 
Output

            For each case, print the number of prime numbers you have found out.
 
Sample Input
3 2 3 4
 
Sample Output
2
 
Author
wangye
 
Source
HDU 2007-11 Programming Contest_WarmUp
 
Recommend
威士忌
 



#include <stdio.h>
#include <math.h>

int a[100000000];
int jude(int);
int main()
{
    int n=1;
    int i;
    int count=0;
    while(scanf("%d", &n)!=EOF)
    {
        count=0;
        for(i=0;i<n;i++)
        {
            scanf("%d", &a[i]);
            if(jude(a[i])==1)
                ++count;
        }

        printf("%d\n", count);

    }

    return 0;
}

int jude(int a)
{
    int k;
    int i;

    k=(int)sqrt(a);

    for(i=2;i<=k;i++)
    {
        if(a%i==0)
            break;
    }

    if(i>k)
        return 1;
    else
        return 0;
}

你可能感兴趣的:(水题)