日本の暦
問題ページ①
問題ページ②
解き方
与えられる暦の種類から西暦または和暦に変換する。
ちなみに、日本の暦は以下の通り。
- 明治時代 (1868年 ~ 1912年)
- 大正時代 (1912年 ~ 1926年)
- 昭和時代 (1926年 ~ 1989年)
- 平成時代 (1989年 ~ 2019年)
コードの説明
与えられる暦の種類からどの関数に年を与えられるのかを決めて、変換結果を返す。
今回はf記法を使って出力文を作っている。(※f記法についてはこちら。)
def jp(Y):
if Y > 1988:
return f"H{Y-1988}"
elif Y > 1925:
return f"S{Y-1925}"
elif Y > 1911:
return f"T{Y-1911}"
elif Y > 1911:
return f"T{Y-1911}"
else:
return f"M{Y-1867}"
def meiji(Y):
return f"{1867+Y}"
def taisho(Y):
return f"{1911+Y}"
def syowa(Y):
return f"{1925+Y}"
def heisei(Y):
return f"{1988+Y}"
E, Y = map(int, input().split())
print([jp(Y), meiji(Y), taisho(Y), syowa(Y), heisei(Y)][E])