Cod sursa(job #480735)

Utilizator ariel_roAriel Chelsau ariel_ro Data 29 august 2010 14:08:04
Problema Cifra Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 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], last[2];
    int n;
    f>>n;
    for (int i = 0; i < n; i++)
    {
        while (f>>nr)
        {
            if (strlen(nr) > 2)
            {
                last[0] = nr[strlen(nr) - 2];
                last[1] = nr[strlen(nr) - 1];

                int lastCifs = atoi(last);
                g<<v[lastCifs]<<endl;
            }
            else
            {
                int lastCifs = atoi(nr);
                g<<v[lastCifs]<<endl;
            }
        }

    }

    return 0;
}