Cod sursa(job #2694507)

Utilizator VladutzPredoiVlad Predoi VladutzPredoi Data 9 ianuarie 2021 14:23:28
Problema Cifra Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;


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


char sir[105];
int n,x;
int v[25];


void precalc()
{
    v[1]=1;
    v[2]=4;
    v[3]=7;
    v[4]=6;
    v[5]=5;
    v[6]=6;
    v[7]=3;
    v[8]=6;
    v[9]=9;
    v[10]=0;
    v[11]=1;
    v[12]=6;
    v[13]=3;
    v[14]=6;
    v[15]=5;
    v[16]=6;
    v[17]=7;
    v[18]=4;
    v[19]=9;
}


int cifra(int x)
{
    int a=x/20;
    int b=x%20;
    int s=0;
    s+=8*a;
    for(int i=1;i<=b;i++)
    {
        s+=v[i];
    }
    s=s%10;
    return s;
}


void solve()
{
    int x;
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>(sir+1);
        int lg=strlen(sir+1);
        if(lg>1)
        {
            x=(sir[lg-1]-'0')*10+(sir[lg]-'0');
        }
        else
        {
            x=sir[lg]-'0';
        }
        fout<<cifra(x);
    }
}


int main()
{
    precalc();
    solve();
    return 0;
}