Pagini recente » Cod sursa (job #1413703) | Cod sursa (job #1404372) | Cod sursa (job #2538337) | Cod sursa (job #1733362) | Cod sursa (job #3280352)
#include <fstream>
#include <map>
#include <unordered_map>
#include <queue>
#include <algorithm>
#include <bitset>
#include <cmath>
#include <set>
#include <stack>
#include <cstdint>
#include <vector>
#include <deque>
#include <string>
#include <climits>
#define a first
#define b second
#define pb push_back
#define s32 int32_t
#define s64 int64_t
#define s8 int8_t
#define s16 uint16_t
#define u32 uint32_t
#define u64 uint64_t
#define u8 uint8_t
#define u16 uint32_t
#define ll long long
#define Cmin CHAR_MIN
#define Cmax CHAR_MAX
#define Smin SHRT_MIN
#define Smax SHRT_MAX
#define US USHRT_MAX
#define Imin INT_MIN
#define Imax INT_MAX
#define UI UINT_MAX
#define Lmin LLONG_MIN
#define Lmax LLONG_MAX
#define UL ULLONG_MAX
#define ins insert
#define stV(v) sort(v.begin(),v.end())
#define st(v,n) sort(v,v+n)
#define st1(v,n) sort(v+1,v+1+n)
#define End <<"\n"
#define Umap unordered_map
#define pf push_front
#define popb pop_back
#define popf pop_front
#pragma GCC optimize("O5,Ofast,unroll-loops")
using namespace std;
const string FN = "lgput";
ifstream cin(FN + ".in");
ofstream cout(FN + ".out");
const int MOD = 1999999973;
int put(int x,int p) {
if (p == 0) return 1;
if (p == 1) return x % MOD;
int aux = put(x,p/2) % MOD;
if (p%2 == 0) return (aux * aux) % MOD;
return (aux * aux) % MOD * x % MOD;
}
signed main() {
int n,p;
cin>>n>>p;
cout << put(n,p);
}