Cod sursa(job #480737)

Utilizator ariel_roAriel Chelsau ariel_ro Data 29 august 2010 14:17:34
Problema Cifra Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <iostream>
#include <fstream>
#include <limits.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>

using namespace std;

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

int v[100];

void precompute()
{
    int sum = 0;
    for (int i = 0; i < 100; i++)
    {
        int prod = i % 10;
        for (int j = 0; j < i - 1; j++)
        {
            prod *= i % 10;
            prod %= 10;
        }

        sum += prod;
        v[i] = sum % 10;
    }
}

int main()
{
    precompute();

    char nr[100];
    int n;
    f>>n;
    while (f>>nr)
    {
        int x = strlen(nr);
        if (x > 2)
        {
            g<<v[(nr[x - 2] - '0') * 10 + (nr[x - 1] - '0')]<<endl;
        }
        else
        {
            int lastCifs = atoi(nr);
            g<<v[lastCifs]<<endl;
        }
    }

    return 0;
}