fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. long long powmod(long long base, long long power, long long mod) {
  5. /*
  6. a^b
  7. 1. b = genap -> b = 2*k
  8. a^b = a^(2*k) = (a^2)^k
  9. 2. b = ganjil -> b = 2*k+1
  10. a^b = a^(2*k+1) = (a^2)^k * a
  11. (a, b) -> (a^2, b/2)
  12. */
  13. long long hasil = 1;
  14. // hasil*(base^power) == hasil2*((base*base)^(power/2))
  15. while(power > 1) {
  16. if(power%2 == 1)
  17. hasil = (hasil*base)%mod;
  18. base = (base*base)%mod;
  19. power = power/2;
  20. }
  21. hasil = (hasil*base)%mod;
  22. return hasil;
  23. }
  24.  
  25. int pangkat(int base, int power) { // O(power)
  26. int hasil = 1;
  27. for(int i = 0; i < power; i++)
  28. hasil *= base;
  29. return hasil;
  30. }
  31.  
  32. int main() {
  33. cout << setfill('0') << setw(6);
  34. cout << powmod(10, 10, 1000000) << endl;
  35. return 0;
  36. }
Success #stdin #stdout 0s 5292KB
stdin
Standard input is empty
stdout
000000