AtCoder

ABC326 A問題(2UP3DOWN)を解く

AtCoder_ABC326_A

AtCoder が提供しているABC(AtCoder Beginner Contest)326 のA問題をC++とPythonで解いてみました。ABC326は、2023年10月28日21:00に実施されました。

AtCoder の紹介はこちらに、プログラミングの方針はこちらに記事があります。

A問題 2UP3DOWN(Difficulty : 28)

問題はリンク先をご覧ください。

ABC326 A問題 2UP3DOWN

条件を満たすか確認します。AtCoder Problems による Difficulty は、28 でした。

解答案

C++ プログラム例(ABC326A)

移動前の $X$ 階と、移動後の $Y$ 階から差を求めます。3階までの下りか、2階までの上りであれば、”Yes” を出力します。それ以外の場合は、”No” を出力します。

以下が、C++プログラムとなります。

#include <bits/stdc++.h>
using namespace std;

int main()
{
	int x, y;
	cin >> x >> y;

	if ((-3 <= y - x)&&(y - x <= 2)) {
		cout << "Yes" << endl;
	} else {
		cout << "No" << endl;
	}

	return 0;
}

AC(Accepted=正しいプログラム)と判定されました。

Python プログラム例(ABC326A)

Python 版も基本的な考え方は同じです。以下となります。

"""AtCoder Beginner Contest 326 A"""
x, y = map(int, input().split())
print("Yes" if -3 <= y - x <= 2 else "No")

こちらも「AC」と判定されました。

最後に

ABC326は、C問題までは解きやすく、D問題以降と難易度の壁がありました。このような場合は、C問題までをどれだけ速く解くかが、自分のレートでは問われます。

引き続き ABC の問題を紹介していきます。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA