結果
| 問題 |
No.167 N^M mod 10
|
| コンテスト | |
| ユーザー |
kongarishisyamo
|
| 提出日時 | 2016-05-01 23:04:17 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 3 ms / 1,000 ms |
| コード長 | 1,073 bytes |
| コンパイル時間 | 536 ms |
| コンパイル使用メモリ | 58,736 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-09-22 01:30:49 |
| 合計ジャッジ時間 | 1,426 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 27 |
ソースコード
#include<iostream>
#include<string>
using namespace std;
int calc(int w,string s){
int tmp=0;
for(int i=0;i<s.size();i++){
tmp*=10;
tmp+=s[i]-'0';
tmp%=w;
}
return tmp;
}
int main(){
string N,M;
int n;
cin>>N>>M;
n=N[N.size()-1]-'0';
int c;
if(M=="0") cout<<"1"<<endl;
else if(n==0||n==1||n==5||n==6) cout<<n<<endl;
else if(n==2){
c=calc(4,M);
if(c==1) cout<<2<<endl;
else if(c==2) cout<<4<<endl;
else if(c==3) cout<<8<<endl;
else cout<<6<<endl;
}
else if(n==3){
c=calc(4,M);
if(c==1) cout<<3<<endl;
else if(c==2) cout<<9<<endl;
else if(c==3) cout<<7<<endl;
else cout<<1<<endl;
}
else if(n==4){
c=calc(2,M);
if(c==1) cout<<4<<endl;
else cout<<6<<endl;
}
else if(n==7){
c=calc(4,M);
if(c==1) cout<<7<<endl;
else if(c==2) cout<<9<<endl;
else if(c==3) cout<<3<<endl;
else cout<<1<<endl;
}
else if(n==8){
c=calc(4,M);
if(c==1) cout<<8<<endl;
else if(c==2) cout<<4<<endl;
else if(c==3) cout<<2<<endl;
else cout<<6<<endl;
}
else {
c=calc(2,M);
if(c==1) cout<<9<<endl;
else cout<<1<<endl;
}
}
kongarishisyamo