Cod sursa(job #2731159)
Utilizator | Cadar Mihnea MihneaCadar101 | Data | 27 martie 2021 13:41:09 |
---|---|---|---|
Problema | Ciuperci | Scor | 30 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ciuperci.in");
ofstream fout("ciuperci.out");
const int MOD = 666013;
int q;
long long n;
long long rezolvare(long long n) {
if (n == 1)
return 1;
if (n == 2)
return 2;
long long dp;
dp = rezolvare((n - 1) / 2) % MOD;
if (n % 2) {
dp = (dp * dp) % MOD;
}
else {
dp = (dp * rezolvare((n - 1) / 2 + 1) * 2) % MOD;
}
return dp;
}
int main()
{
fin >> q;
while(q--){
fin >> n;
fout << rezolvare(n) % MOD << '\n';
}
return 0;
}