AtCoder が提供しているABC(AtCoder Beginner Contest)377 A問題をC++とPythonで解いてみました。ABC377は、2024年10月26日21:00に実施されました。
AtCoder の紹介はこちらに、プログラミングの方針はこちらに記事があります。
A問題 Rearranging ABC(Difficulty : 12)
問題の詳細は、リンク先をご覧ください。
文字列の要素をソートして比較しました。AtCoder Problems による Difficulty は 12 でした。
解答案
C++ プログラム例(ABC377A)
sort
関数で、文字列の文字を辞書順に並び替えることができます。sort
後の文字列が “ABC” となっているか確認します。
以下が、C++プログラムです。
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s;
cin >> s;
sort(s.begin(), s.end());
if (s == "ABC") {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}
return 0;
}
AC(Accepted=正しいプログラム)と判定されました。
Python プログラム例(ABC377A)
Python版も基本的な考え方は同じです。文字列を書き換えることができないため、ソートして join
しました。以下がプログラムです。
"""AtCoder Beginner Contest X377 A"""
s = input()
s = "".join(sorted(s))
print("Yes" if s == "ABC" else "No")
こちらも「AC」と判定されました。
最後に
レートはいまいちでした。気にせず、これからもぼちぼちと参加します。
引き続き ABC の問題を紹介していきます。