メモ@inudaisho

君見ずや出版 / 興味次第の調べ物置き場

AtCoder Tenka 1 Programmer Beginner Contest (2018) 2完

 ひさしぶりにレーティングの変化のあるコンテストだったので、参加した。AtCoder 的にはレーティングに変化のないコンテストも参加してほしいらしいが、過去問がいっぱいあるのでそっちばっかりやってた。

 とかなんとか書いてるが、今回のこれは特別なアルゴリズムがでてきたわけではなく純粋に頭の体操の問題なので拾えないといけないものだったのにAB2完で終わってしまった。AB2問を10分以内に解けたのがせめてもの救いか。入力例出力例のコピペを手でやっているのでこれ以上速くするのは無理だろう。Cは想定解法のデグレ版みたいなのをおもいついて結局それをいじっているだけで終わった。たとえばそこでプログラムで最適を求めるようなものを書いてればよかったのだが、そういうこともせず、計算でなんとかしようとしたので半分ACできず。Dはみただけ。どちらも条件が押さえれば、範囲がきまり、それを計算するだけなので、これを落としたのはちょっとよくない。つらい。

 ちなみに半分しかACしなかった不十分なCの解答がこれ。

aA = sorted([int(_) for _ in sys.stdin.readlines()])
aInvA = list(reversed(aA))

iDiff = aInvA[0] - aA[0]
for i in range(1,iN//2 + 1 ):
    D1 = aInvA[i] - aA[i-1]
    D2 = aInvA[i-1] - aA[i]
    if D1 :
        iDiff += D1
    if D2:
        iDiff += D2
print(iDiff)

f:id:inudaisho:20181028025013j:plain

 ということだが、前が0完だったのでレーティングは上がった。まぁしかし今回の結果をみるに、今までDの消化を目指していたけど、DよりもCを先に重点的にやって実装力を涵養した方がいいような気がしてきた。44歳のハゲのおっさんの脳は限界を感じるときがあるが(XorSumのダメージがでかい)、ま、もうしばらくはがんばっていこう。

プログラミングコンテストチャレンジブック [第2版] ?問題解決のアルゴリズム活用力とコーディングテクニックを鍛える?

プログラミングコンテストチャレンジブック [第2版] ?問題解決のアルゴリズム活用力とコーディングテクニックを鍛える?