Pagini recente » Cod sursa (job #275749) | Cod sursa (job #1781819) | Cod sursa (job #2769431) | Cod sursa (job #1839833) | Cod sursa (job #2828857)
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
ifstream in("cifra.in");
ofstream out("cifra.out");
int main()
{
int n;
int v[101];
v[0]=0;
for (int i=1;i<=100;i++)
{
v[i]=1;
for (int j=1;j<=i;j++)
{
v[i]=v[i]*i;
v[i]=v[i]%10;
}
}
for (int i=2;i<=100;i++)
{
v[i]+=v[i-1];
v[i]=v[i]%10;
}
/*
int ultcifra[12];
ultcifra[0]=0;
ultcifra[1]=7;
for (int i=2;i<=11;i++)
{
ultcifra[i]+=ultcifra[i-1];
ultcifra[i]=ultcifra[i]%10;
}
*/
in >>n;
for (int i=1;i<=n;i++)
{
int s=0;
string numar;
in >> numar;
int a = (int) numar[numar.size()-1]-48;
if (numar.size()>1)
{
numar.pop_back();
int b = (int) numar[numar.size()-1]-48;
a+=b*10;
}
out <<v[a]<<endl;
}
// trebuie sa fac suma doar pe ultimele 100 de numere deoarece suma pe 10 este de 49 si inmultita cu 10 da un 0 la final care nu afecteaza raspunsul
}