Friday, February 18, 2011

10924 - Prime Words


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

#define M 1050

bool prime[M];
int genprime();

int main()
{
    long int n,i;
    char str[25];
    freopen("in.txt","r",stdin);
    genprime();
    while(gets(str))
    {
        n=0;
        for(i=0;str[i];i++)
            if(str[i]>=97)
                n=n+str[i]-96;
            else
                n=n+str[i]-38;
        if(prime[n])
            printf("It is a prime word.\n");
        else
            printf("It is not a prime word.\n");
    }
    return 0;
}
int genprime()
{
    unsigned long i,j,s=sqrt(M);
    for(i=1;i<M;i++)
        prime[i]=true;
    for(i=2;i<s;)
    {
        if(prime[i])
            for(j=i+i;j<M;j+=i)
                prime[j]=false;
        for(i++;!prime[i];i++);
    }
    return 0;
}

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.