Cod sursa(job #3348286)

Utilizator rapidu36Victor Manz rapidu36 Data 20 martie 2026 15:49:23
Problema Cifra Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <stdio.h>

#define K 20

int u_cif[K+1];

int ultima_cifra_suma(int n)
{
    return ((n / K) * u_cif[K] + u_cif[n%K]) % 10;
}

int main()
{
    for (int i = 1; i <= K; i++)
    {
        int p = 1;
        for (int j = 0; j < i; j++)
        {
            p = (p * i) % 10;
        }
        u_cif[i] = (u_cif[i-1] + p) % 10;
    }
    FILE *in = fopen("cifra.in", "r");
    FILE *out = fopen("cifra.out", "w");
    int t;
    fscanf(in, "%d", &t);
    fgetc(in);
    for (int i = 0; i < t; i++)
    {
        char c, c1 = '0', c2 = '0';
        c = fgetc(in);
        while (c != '\n')
        {
            c1 = c2;
            c2 = c;
            c = fgetc(in);
        }
        int n = 0;
        n = 10 * (c1 - '0') + (c2 - '0');
        fprintf(out, "%d\n", ultima_cifra_suma(n));
    }
    fclose(in);
    fclose(out);
    return 0;
}