結果
問題 |
No.434 占い
|
ユーザー |
![]() |
提出日時 | 2018-09-03 21:51:20 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,289 bytes |
コンパイル時間 | 884 ms |
コンパイル使用メモリ | 64,308 KB |
実行使用メモリ | 13,636 KB |
最終ジャッジ日時 | 2024-10-09 13:12:12 |
合計ジャッジ時間 | 5,750 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 11 TLE * 1 -- * 15 |
ソースコード
#include <iostream> #include <vector> #include <string> using namespace std; int table[10][10] = { {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9, 1}, {2, 3, 4, 5, 6, 7, 8, 9, 1, 2}, {3, 4, 5, 6, 7, 8, 9, 1, 2, 3}, {4, 5, 6, 7, 8, 9, 1, 2, 3, 4}, {5, 6, 7, 8, 9, 1, 2, 3, 4, 5}, {6, 7, 8, 9, 1, 2, 3, 4, 5, 6}, {7, 8, 9, 1, 2, 3, 4, 5, 6, 7}, {8, 9, 1, 2, 3, 4, 5, 6, 7, 8}, {9, 1, 2, 3, 4, 5, 6, 7, 8, 9} }; static vector<int> digitize(string s) { int size = s.length(); vector<int> digits; for (int i=0; i<size; i++) { digits.push_back(s[i]-'0'); } return digits; } static vector<int> add(vector<int> ss) { int size = ss.size(); vector<int> added; for (int i=0; i<size-1; i++) { added.push_back(table[ss[i]][ss[i+1]]); } return added; } static int reduce(vector<int> ss) { int size = ss.size(); vector<int> reduced = ss; for (int i=0; i<size-1; i++) { reduced = add(reduced); } return reduced[0]; } int main(int argc, char* argv[]) { int T; string s; cin >> T; for (int i=0; i<T; i++) { cin >> s; vector<int> ss = digitize(s); int r = reduce(ss); cout << r << endl; } }