Cod sursa(job #465687)

Utilizator lam99Tran Bach Lam lam99 Data 25 iunie 2010 11:52:38
Problema Ratphu Scor 0
Compilator c Status done
Runda Stelele Informaticii 2010, gimnaziu si clasa a IX-a, Ziua 1 Marime 1.33 kb
#include<stdio.h>
char c;
long n,i,num,x,k,f[19];
int main()
{
    freopen("ratphu.in","r",stdin);
    freopen("ratphu.out","w",stdout);
    n=1;
    while(x==0)
       {
           ++num;
           scanf("%c",&c);
           if(c=='\n')
                 x=1;
           else
               f[num]=c;
       }
    scanf("%ld",&k);
    if(k==1)
         {
            for(i=1;i<=num;++i)
              n=n*i;
            printf("%ld\n",n);
         }
    if(k==2)
         {
            for(i=1;i<=num;++i)
              if(f[i]%2==0)
                 ++x;
            for(i=1;i<num;++i)
               n=n*i;
            printf("%ld\n",n*x);
         }
    if(k==3)
         {
            for(i=1;i<=num;++i)
              x+=f[i];
            if(x%3==0)
                {
                  for(i=1;i<=n;++i)
                  n=n*i;
                  printf("%ld\n",n);
                }
            else
                printf("0\n");
         }
     if(k==9)
         {
            for(i=1;i<=num;++i)
              x+=f[i];
            if(x%9==0)
                {
                  for(i=1;i<=n;++i)
                  n=n*i;
                  printf("%ld\n",n);
                }
            else
                printf("0\n");
         }

    fclose(stdin);
    fclose(stdout);
    return 0;

}