結果
問題 |
No.653 E869120 and Lucky Numbers
|
ユーザー |
|
提出日時 | 2025-09-26 17:26:07 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,172 bytes |
コンパイル時間 | 883 ms |
コンパイル使用メモリ | 74,344 KB |
実行使用メモリ | 15,944 KB |
最終ジャッジ日時 | 2025-09-26 17:26:13 |
合計ジャッジ時間 | 5,106 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | -- * 3 |
other | WA * 1 TLE * 1 -- * 29 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:50:10: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 50 | scanf("%d", &t); | ~~~~~^~~~~~~~~~
ソースコード
#include <iostream> #include <vector> using namespace std; void Solve() { string p; cin >> p; int len = p.size(); vector<int> vec; vec.reserve(len); for (int i = len - 1; i >= 0; --i) vec.push_back(p[i] - '0'); bool single = false; for (int i = 0; i < len; ++i) { if (i == len - 1) { if ((i != 0 && vec[i] == 0) || vec[i] == 6 || vec[i] == 7) { puts("Yes"); } else { puts("No"); } return; } if (single) { if (vec[i] != 6 && vec[i] != 7) { puts("No"); return; } } if (vec[i] == 2) { // 6 + 6 --vec[i + 1]; } else if (vec[i] == 3) { // 6 + 7 --vec[i + 1]; } else if (vec[i] == 4) { // 7 + 7 --vec[i + 1]; } else if (vec[i] == 6) { single = true; } else if (vec[i] == 7) { single = true; } else { puts("No"); return; } } } int main() { int t; scanf("%d", &t); while (t--) { Solve(); } return 0; }