Pagini recente » Cod sursa (job #3246975) | Cod sursa (job #2608813) | Cod sursa (job #1115001) | Cod sursa (job #779043) | Cod sursa (job #2175823)
#include <bits/stdc++.h>
#include <cassert>
using namespace std;
fstream f("cifra.in", ios::in);
fstream g("cifra.out", ios::out);
int main(void)
{
vector<uint32_t> precomp;
uint32_t n, p = 1, s = 0;
string szNum;
precomp.push_back(0);
assert(f >> n);
for(uint32_t i = 1; i < 100; i++)
{
precomp.push_back(i);
for(uint32_t j = 1; j < i; j++)
precomp[i] *= i, precomp[i] %= 10;
precomp[i] += precomp[i-1], precomp[i] %= 10;
}
for(;n ;n--)
{
assert(f >> szNum);
uint16_t len = szNum.length();
if(len)
assert(g << precomp[szNum.front() - 48] << "\n");
else
assert(g << precomp[((szNum[len - 2] - 48) * 10 + szNum[len - 1]) - 48] << "\n");
}
return EXIT_SUCCESS;
}
// for(uint32_t i = 1; i <= n; i++)
// {
// p = 1;
// for(uint32_t j = 1; j <= i; j++)
// p *= i, p %= 10;
// s += p, s %= 10;
// }