Cod sursa(job #992199)

Utilizator Impaler_009Mihai Nitu Impaler_009 Data 1 septembrie 2013 14:15:29
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include <fstream>
#include <string>
using namespace std;

ifstream fin ("cifra.in");
ofstream fout ("cifra.out");

string s;
int v[10][3],T,i,k,c;

int main()
{
    fin>>T;

    v[1][1] = 1; v[1][1] = 1;
    v[2][1] = 4; v[2][2] =6;
    v[3][1] = 7; v[3][2] =3;
    v[4][1] = 6; v[4][2] = 4;
    v[5][1] = 5; v[5][1] = 5;
    v[6][1] = 6; v[6][1] = 6;
    v[7][1] = 3; v[7][2] = 7;
    v[8][1] = 6; v[8][2] =4;
    v[9][1] = 9; v[9][1] = 9;

    for (int i=1; i<=T; ++i)
    {
        fin>>s;
        int len = s.length();
        int c=0;

        if (len > 1)
        {
            k = s[len-2]-'0';
            if (k%2)
            c+= 4*k + 1;
            else c+= 4*k;
        }
        if (len==1 || k%2==0)
        {
            for (int j=1; j<=s[len-1]-'0'; ++j)
            {
                c+=v[j][1];
            }
        }
        else
        {
            for (int j=1; j<=s[len-1]-'0'; ++j)
            {
                c+=v[j][2];
            }
        }
        fout<<c%10<<"\n";
    }
}