Cod sursa(job #1810240)

Utilizator DanFodorFODOR Dan Horatiu DanFodor Data 19 noiembrie 2016 19:42:24
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main()
{
    ifstream cin ("cifra.in");
    ofstream cout ("cifra.out");

    int i, k;
    int all[1001];
    int current[1001];
    all[0] = 0;
    current[0] = 0;

    for (i = 1; i < 101; ++i)
    {
        all[i] = 0;
        current[i] = 0;
        int k = i, p = i;
        while (k > 1)
        {
            k--;
            p = p*i % 10;
        }
        current[i] = p;
        all[i] = (all[i-1] + current[i] )%10;
    }

    int n, len, chars;
    string str;

    cin >> n;
    for (i = 0; i < n; ++i)
    {
        cin >> str;
        len = str.size();
        chars = len > 2 ? 2 : len;

        str = str.substr(len - chars, chars);
        if (chars > 1)
            k = 10 * ((int)(str[0] - '0')) + ((int)(str[1] - '0'));
        else
            k = ((int)(str[0] - '0'));
        cout << all[k] << '\n';
    }
    return 0;
}