結果
問題 | No.747 循環小数N桁目 Hard |
ユーザー |
|
提出日時 | 2020-04-13 15:37:03 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 5 ms / 2,000 ms |
コード長 | 923 bytes |
コンパイル時間 | 1,434 ms |
コンパイル使用メモリ | 167,920 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-25 01:44:15 |
合計ジャッジ時間 | 4,543 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 120 |
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:38:11: warning: 'n' may be used uninitialized [-Wmaybe-uninitialized] 38 | }else if(n==4){ | ^~ main.cpp:17:9: note: 'n' was declared here 17 | int n; | ^
ソースコード
#include <bits/stdc++.h> #define rep(i,n) for(int i=0;i<n;i++) using namespace std; using ll = long long ; using P = pair<int,int> ; const ll INF = 1e18; const int MOD = 1000000007; int main(){ string sn,sk; cin >> sn >> sk; int p = (sn[sn.size()-1] - '0')%2; int q = 0; rep(i,sn.size()){ q = (q + sn[i] - '0')%3; } int n; if(p==0){ if(q==0) n = 0; else if(q==1) n = 4; else if(q==2) n = 2; }else{ if(q==0) n = 3; else if(q==1) n = 1; else if(q==2) n = 5; } int k = (sk[sk.size()-1] - '0')%2; int ans; if(n==0){ ans = 4; }else if(n==1){ ans = 2; }else if(n==2){ if(k==1) ans = 8; else ans = 7; }else if(n==3){ ans = 5; }else if(n==4){ ans = 7; }else{ if(k==1) ans = 1; else ans = 2; } cout << ans << endl; return 0; }