結果
| 問題 |
No.683 Two Operations No.3
|
| コンテスト | |
| ユーザー |
e869120
|
| 提出日時 | 2018-05-18 21:18:09 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 555 bytes |
| コンパイル時間 | 503 ms |
| コンパイル使用メモリ | 64,876 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-06-28 13:46:07 |
| 合計ジャッジ時間 | 1,151 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 8 WA * 8 |
ソースコード
#include <iostream>
using namespace std;
long long A, B;
bool solve(long long p, long long q) {
if (p > A || q > B) return false;
if (p == A && q == B) return true;
long long L1 = p, L2 = q;
while (L1 > A) L1 /= 2;
while (L2 > B) L2 /= 2;
if (A - L1 >= 100 || B - L1 >= 100) return false;
bool r1 = solve(p * 2, q + 1);
bool r2 = solve(p + 1, q * 2);
if (r1 == true || r2 == true) return true;
return false;
}
int main() {
cin >> A >> B;
bool T = solve(0, 0);
if (T == true) cout << "Yes" << endl;
else cout << "No" << endl;
return 0;
}
e869120