알고리즘/softeer
Softeer - 수퍼바이러스
유이얼
2021. 8. 20. 15:06
https://softeer.ai/practice/info.do?eventIdx=1&psProblemId=391&sw_prbl_sbms_sn=14494
#include <iostream>
#include <set>
#include <vector>
#include <queue>
#include <string>
using namespace std;
int main() {
const int MOD = 1000000007;
long long N, P, T;
cin >> N >> P >> T;
T *= 10;
P %= MOD;
long long ans = N;
while (T) {
long long p = P;
long long count = 1;
while (T > 2 * count) {
p *= p;
p %= MOD;
count *= 2;
}
T -= count;
ans *= p;
ans %= MOD;
}
cout << ans << "\n";
return 0;
}