Cod sursa(job #3138716)

Utilizator toma_ariciuAriciu Toma toma_ariciu Data 21 iunie 2023 17:17:31
Problema Cifra Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include <fstream>

using namespace std;

int sum[1005];

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

void solve()
{
    string str;
    fin >> str;
    int x, len = str.size();
    if(len == 1)
        x = str[0] - '0';
    if(len == 2)
        x = (str[0] - '0') * 10 + (str[1] - '0');
    if(len >= 3)
        x = (str[len - 3] - '0') * 100 + (str[len - 2] - '0') * 10 + (str[len - 1] - '0');
    fout << sum[x] << '\n';
}

int main()
{
    int nr_teste;
    fin >> nr_teste;
    for(int i = 1; i <= 1000; i++)
    {
        int mod4 = i % 4, add = 1, cif = i % 10;
        if(mod4 == 0)
            mod4 = 4;
        for(int j = 1; j <= mod4; j++)
            add *= cif;
        sum[i] = (sum[i - 1] + add) % 10;
    }
    while(nr_teste--)
        solve();
    return 0;
}