(ABC140)
ABC140のネタバレあります! 三十三間党です.
問題はこちら. atcoder.jp
A.Password
高橋くんが3桁パスワードを作る問題.ありがちな話ですが,(文字の種類)^(桁数)ですね.今回だとN3.しかし急ぎすぎてなぜかN2を出力する凡ミス.
import strutils,math var N = stdin.readline.parseint echo (N^3)
B.Buffet
料理をリストAの順番A[i]で食べ,満足度リストB[A[i]]番目の満足度を得,もしA[i]+1がA[i+1]なら,C[i]の満足度も得れる,という問題です.リストが実装出来ますか?という問題だと思います.
import strutils,sequtils,math var N = stdin.readline.parseint A = stdin.readline.split.map(parseint) B = stdin.readline.split.map(parseint) C = stdin.readline.split.map(parseint) ans = 0 ans += sum(B) for i in 0..<N-1: if A[i] + 1 == A[i+1]: ans += C[A[i]-1] echo ans
C.Maximal Value
問題文の意味を読み取るのに時間がかかりました.解き方はやっぱり例から入りました.どれだけ大きい数がBに入っていたとしても,連続しないと意味がないようなので,min(B[i],B[i+1])が思いつきました.それに+でBの最初と最後を足して完成です.
import sequtils,strutils,math,algorithm var N = stdin.readline.parseint B = stdin.readline.split.map(parseint) ans = 0 ans += B[0] ans += B[N-2] for i in 0..<N-2: ans += min(B[i],B[i+1]) echo ans
D.Face Produces Unhappiness
これもまた問題文で一瞬??となりました.てか解説文読んでもよくわからん.
総評
パフォーマンスは541.冴えねー.茶色レートにもならんし.やっぱりね,過去問でD解いてないやつがD解けるようになるわけないっすわ.というわけで過去問のDもやっていきたいと思います.あと蟻本のC++->Nim翻訳も進めていきたい.
Nimメモはここに移動しましたー> qiita.com
Twitterアカウントはこれー> twitter.com