【AtCoder】ABC202解説(Python)

エイシングプログラミングコンテスト2021(AtCoder Beginner Contest 202)の解説記事です。

目次

ABC202 A – Three Dice

問題

問題文の要約は以下の通りです。

問題の要約

3個のサイコロを振って出た目が \(a\), \(b\), \(c\) のとき、サイコロの裏面の目の和を求めよ。

制約

・\(1 \le a, b, c \le 6\)
・入力は全て整数である。

入力

\(a\) \(b\) \(c\)

出力

3つのサイコロについて、出た目とは反対の面が表す整数を足し合わせた値を出力せよ。

解説

3個のサイコロを振って出た目が \(a\), \(b\), \(c\) のとき、サイコロの裏面の目は\(7-a\), \(7-b\), \(7-c\) なのでこれを足し合わせる。

解説

まず、\(a\), \(b\), \(c\) をint型で受け取ります。

# 入力
a,b,c=map(int,input().split())

サイコロの裏面の目 \(7-a\), \(7-b\), \(7-c\) の和 \(21-a-b-c\) を出力します。

# 出力
print(21-a-b-c)

解答

# 入力
a,b,c=map(int,input().split())

# 出力
print(21-a-b-c)

ABC202 B – 180°

問題

問題文の要約は以下の通りです。

問題の要約

01689からなる文字列 \(S\) が与えられたとき、\(S\) を180°回転させた文字列を出力せよ。すなわち、\(S\) に次の操作を施してできる文字列を出力せよ。
・\(S\) を反転する。
00に、11に、69に、88に、96に変換する。

入力

\(S\)

出力

\(S\) が与えられたとき、\(S\) を180°回転させた文字列を出力せよ

解説

指示通りに操作を行う。

解説

\(S\)を文字列で受け取ります。

# 入力
s=input()

文字列 \(S\)を反転します。

# 文字列を反転する。
s = ''.join(list(reversed(s)))

6と9をそれぞれ変換します。一旦、6を違う文字に変換するのを忘れないようにしましょう。

# 6と9をそれぞれ変換する
s=s.replace('6','x').replace('9','6').replace('x','9')

最後に答えを出力します。

# 出力
print(s)

解答

# 入力
s=input()

# 文字列を反転する。
s = ''.join(list(reversed(s)))

# 6と9をそれぞれ変換する
s=s.replace('6','x').replace('9','6').replace('x','9')

# 出力
print(s)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次