【AtCoder】NOMURA プログラミングコンテスト 2020 Python解説【初心者向け】

AtCoder

NOMURA プログラミングコンテスト 2020のA問題・B問題Python用解説です。

A問題

a,b,c,d,e=map(int,input().split())
ans=(c-a)*60+d-b-e
print(ans)

h1,h2,m1,m2…などと入れるのが面倒なので、素早さのためにa,b,c,d,eで代用しています。(早解き回ですと、数秒での差がレート変動に大きく影響します)

ミスを防ぎたい方は正確に書いておきましょう。

B問題

「仮に今ある文字列があるとして、その文字列のPの文字をDに置き換えた時に博士・PD 指数が減ることはない」ということに気づくと、?は全てDで埋めれば良いとわかります。

よって、入力された文字列の”?”を”D”に置き換えて出力するプログラムを組みます。

t=input()
ans=""
for i in range(len(t)):
  if t[i]=="?":
    ans+="D"
  else:
    ans+=t[i]
print(ans)

「変数tに入れた文字列を直接いじる」でもいいですが、ここでは「答えとして出力する用の空文字列を用意して、元の文字列の情報をもとに空文字列に答えとなる文字列を足していく」方法でコードを書いています。

空文字列に文字列を足していく手法で面倒くさい手順を簡略化できる場合もあるので、頭の片隅に入れておきましょう。

コメント

タイトルとURLをコピーしました