Submission #19336

#TimeUsernameProblemLanguageResultExecution timeMemory
19336pangΑ (kriii4_P1)C++98
0 / 100
0 ms1720 KiB
#include<iostream> #include<math.h> #include<algorithm> #include<string> using namespace std; #define MOD 1000000007 int main() { long long x, a; cin >> a; cin >> x; string s; while (x > 0) { s += '0' + (x & 1); x >>= 1; } reverse(s.begin(), s.end()); int l = s.length(); long long int ans = 1; //cout << s << endl; for (int i = 0; i < l; i++) { ans *= ans; ans = ans%MOD; if (s[i] == '1') { ans *= a; ans = ans%MOD; } } cout << ans << endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...