Cod sursa(job #3137584)

Utilizator alexcostinCostin Alexandru alexcostin Data 13 iunie 2023 17:24:33
Problema Cifra Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
using namespace std;

int Sol[101], T, nrcif, rest;
char s[101];

ifstream f("cifra.in");
ofstream g("cifra.out");

int ucif(int n)
{
    int uc, r, p;
    uc = n % 10;
    r = n % 4;
    p = 1;
    if (r == 0)
        r = 4;
    while(r--) {
        p *= uc;
    }
    return p % 10;
}


void calcul()
{

    for (int i = 1; i < 100; i++) {
        Sol[i] = (Sol[i-1] + ucif(i)) % 10;
    }
}
int main()
{
    calcul();
    f >> T;
    f.get();
    for (int i = 1; i <= T; i++) {
        f.getline(s,101);
        nrcif = f.gcount() - 1;
        rest = s[nrcif-1] - '0';
        if (nrcif >= 2) {
            rest += (s[nrcif-2] - '0') * 10;
        }
        g << Sol[rest] << '\n';
    }
    return 0;
}