Cod sursa(job #1677709)

Utilizator mihneacazCazacu Mihnea mihneacaz Data 6 aprilie 2016 19:04:03
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.45 kb
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char s[150];
inline int calc(int a,int e)
{
    int r;
    r=e%4;
    switch(a)
    {
        case 0: return 0;
                break;
        case 1: return 1;
                break;
        case 2: if(r==2)
                  return 4;
                else
                  return 6;
                break;
        case 3: if(r==3)
                    return 7;
                else
                    return 3;
                break;
        case 4: return 6;
                break;
        case 5: return 5;
                break;
        case 6: return 6;
                break;
        case 7: if(r==3)
                  return 3;
                else
                  return 7;
                break;
        case 8: if(r==2)
                    return 4;
                else
                    return 6;
                break;
        case 9: return 1;
                break;
    }
}
int main()
{
    freopen("cifra.in","r",stdin);
    freopen("cifra.out","w",stdout);
    int n,i,nr,num,sum,j;
    scanf("%d ",&n);
    for(i=1; i<=n; i++)
    {
        gets(s);
        num=strlen(s);
        nr=0;
        if(num==1)
          nr=s[0]-'0';
        else
          nr=(s[num-2]-'0')*10+s[num-1]-'0';
        sum=0;
        for(j=1; j<=nr; j++)
            sum=(sum+calc(j%10,j))%10;
        printf("%d\n",sum);
    }
    return 0;
}