結果

問題 No.683 Two Operations No.3
ユーザー ant2357
提出日時 2018-05-12 18:06:05
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
MLE  
実行時間 -
コード長 652 bytes
コンパイル時間 2,628 ms
コンパイル使用メモリ 191,592 KB
最終ジャッジ日時 2025-01-05 10:36:05
ジャッジサーバーID
(参考情報)
judge3 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 8 TLE * 1 MLE * 7
権限があれば一括ダウンロードができます

ソースコード

diff #

#include "bits/stdc++.h"

using namespace std;

using ll = long long;
using ld = long double;

const int INF = (1 << 30) - 1;
const ll INF64 = ((ll)1 << 62) - 1;
const double PI = 3.1415926535897932384626433832795;

const int dx[] = { 0, 1, 0, -1 };
const int dy[] = { -1, 0, 1, 0 };

bool solve(ll x, ll y) {
	if (x < 0 || y < 0 
		|| x == 1 && y == 1
		|| x % 2 != 0 && y % 2 != 0) {
		return false;
	} else if (x == 0 && y == 0) {
		return true;
	}

	return solve(x / 2, y - 1) || solve(x - 1, y / 2);
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);

	ll a, b;
	cin >> a >> b;

	cout << (solve(a, b) ? "Yes" : "No") << endl;
	return 0;
}
0