結果
| 問題 |
No.167 N^M mod 10
|
| ユーザー |
srup٩(๑`н´๑)۶
|
| 提出日時 | 2016-10-24 07:54:10 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,658 bytes |
| コンパイル時間 | 1,196 ms |
| コンパイル使用メモリ | 159,748 KB |
| 実行使用メモリ | 6,820 KB |
| 最終ジャッジ日時 | 2024-11-24 02:40:04 |
| 合計ジャッジ時間 | 2,080 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 21 WA * 6 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<int> vint;
typedef pair<int,int> pint;
typedef vector<pint> vpint;
#define rep(i,n) for(int i=0;i<(n);i++)
#define reps(i,f,n) for(int i=(f);i<(n);i++)
#define all(v) (v).begin(),(v).end()
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define chmax(a, b) a = (((a)<(b)) ? (b) : (a))
#define chmin(a, b) a = (((a)>(b)) ? (b) : (a))
int main(void){
string n, m; cin >> n >> m;
int num = n[n.size() - 1] - '0';
if(m == "0"){
printf("1\n");
return 0;
}
int f = m[m.size() - 1] - '0';
int ff;
if("0" <= m && m <= "9"){
ff = m[m.size() - 1] - '0';
}else{
ff = (m[m.size() - 2] - '0') * 10 + (m[m.size() - 1] - '0');
}
if(num == 0 || num == 1 || num == 5 || num == 6){
printf("%d\n", num);
}else if(num == 4){
if(f % 2 == 0) printf("6\n");
else printf("4\n");
}else if(num == 9){
if(f % 2 == 0) printf("1\n");
else printf("9\n");
}else if(num == 2){
if(ff % 4 == 1) printf("2\n");
else if(ff % 4 == 2) printf("4\n");
else if(ff % 4 == 3) printf("8\n");
else if(ff % 4 == 0) printf("6\n");
}else if(num == 3){
if(ff % 4 == 1) printf("3\n");
else if(ff % 4 == 2) printf("9\n");
else if(ff % 4 == 3) printf("7\n");
else if(ff % 4 == 0) printf("1\n");
}else if(num == 7){
if(ff % 4 == 1) printf("7\n");
else if(ff % 4 == 2) printf("9\n");
else if(ff % 4 == 3) printf("3\n");
else if(ff % 4 == 0) printf("1\n");
}else if(num == 8){
if(ff % 4 == 1) printf("8\n");
else if(ff % 4 == 2) printf("4\n");
else if(ff % 4 == 3) printf("2\n");
else if(ff % 4 == 0) printf("6\n");
}
return 0;
}
srup٩(๑`н´๑)۶