問題概要
問題ページ
-
-
B - 180°
問題ページへ移動する
問題文
0、1、6、8、9 からなる文字列 \(S\) が与えられます。
\(S\) を \(180\) 度回転したものを出力してください。すなわち、\(S\) に次の操作を施してできる文字列を出力してください。
- \(S\) を反転する。
0を0に、1を1に、6を9に、8を8に、9を6に変換する。
制約
- \(1 \leq |S| \leq 10^5\)
- \(S\) は
0、1、6、8、9からなる。
問題の考察
ACコード
import sys
def solve():
input = sys.stdin.readline
mod = 10 ** 9 + 7
s = str(input().rstrip('\n'))
ans = []
for i in range(len(s)):
if s[-i-1] == "6":
ans.append("9")
elif s[-i-1] == "9":
ans.append("6")
else:
ans.append(s[-i-1])
print("".join(ans))
if __name__ == '__main__':
solve()