AtCoder

ABC315 A問題(tcdr)を解く

AtCoder_ABC315_A

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

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

A問題 tcdr(Difficulty : 12)

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

ABC315 A問題 tcdr

与えられた文字列から特定の文字を抜く問題です。AtCoder Problems による Difficulty は 12 でした。

問題名の「tcdr」は、「atcoder」から母音を抜いた文字になっています。

解答案

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

文字列を読み込み、a、e、i、o、u 以外の文字を出力します。1文字毎に判断して出力するだけです(9ー12行目)。

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

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

int main()
{
	string s;
	cin >> s;

	for (int i = 0; i < s.length(); ++i) {
		if ((s[i] != 'a')&&(s[i] != 'e')&&(s[i] != 'i')
		  &&(s[i] != 'o')&&(s[i] != 'u')) {
			cout << s[i];
		}
	}
	cout << endl;

	return 0;
}

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

Python プログラム例(ABC315A)

Python では、判定する文字を文字列にまとめて in 演算子で判断しました(6行目)。全体のループで、enumerate を使っているのは、pylint警告C0200を参考にこの書き方を採用しているためです(5行目)。

"""AtCoder Beginner Contest 315 A"""
s = input()

result = ""
for _, ch in enumerate(s):
    if ch not in "aeiou":
        result += ch

print(result)

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

最後に

この回では、ABCEの4問を解くことができてレートの Highest を更新しました(とはいってもレート901ですが)。向上具合がレートという数字で見えるため、少しでも上がるとうれしくなります。

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

COMMENT

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

CAPTCHA