Cod sursa(job #139421)

Utilizator hulparuadrianhulparu adrian hulparuadrian Data 20 februarie 2008 09:59:16
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.88 kb
#include<iostream>
#include<fstream>
                 using namespace std;
                 ifstream f("cifra.in");
                 ofstream g("cifra.out");
long i,n,sol,t;
int calk_sol(long n)
{
for(long i=1;i<=n;i++)
{
         if (i%10==1) sol=(sol+1%10)%10;
         else if (i%10==2) 
              switch (i%4)
              {
              case 1: sol=(sol+2)%10;
              case 2: sol=(sol+4)%10;
              case 3: sol=(sol+8)%10;
              case 0: sol=(sol+6)%10;
                     }
         else if (i%10==3)
              switch (i%4)
              {
              case 1: sol=(sol+4)%10;
              case 2: sol=(sol+9)%10;
              case 3: sol=(sol+7)%10;
              case 0: sol=(sol+1)%10;
                     }
         else if (i%10==4)
              switch (i%2)
              {
              case 1: sol=(sol+4)%10;
              case 0: sol=(sol+6)%10;
                     }
         else if (i%10==5) sol=(sol+5)%10;
         else if (i%10==6) sol=(sol+6)%10;
         else if (i%10==7)
              switch (i%4)
              {
              case 1: sol=(sol+7)%10;
              case 2: sol=(sol+9)%10;
              case 3: sol=(sol+3)%10;
              case 0: sol=(sol+1)%10;
                     }
         else if (i%10==8)
              switch (i%4)
              {
              case 1: sol=(sol+8)%10;
              case 2: sol=(sol+4)%10;
              case 3: sol=(sol+2)%10;
              case 0: sol=(sol+6)%10;
              }
         else if (i%10==9)
              switch (i%2)
              {
              case 1:sol=(sol+9)%10;
              case 0:sol=(sol+1)%10;
                     }
                                     }
    return sol;
    }

int main()
{    
          f>>t;
    for(int l=1;l<=t;l++)
           { f>>n;g<<calk_sol(n)<<"\n";}
    f.close();
    g.close();
    }