paizaオンラインハッカソン6 解答

タイトル
クリア

女子高生プログラマーの大バトル!〜コボール文明の逆襲〜 paizaオンラインハッカソン(略してPOH!「ポー!」)6
https://paiza.jp/poh/joshibato


相変わらず頭の悪いキャッチーなタイトルのpaizaオンラインハッカソン

公開日にサクっと全キャラクリアしたので答えを晒してみる。
使用した言語はpython2


六村リオ
# 標準入力から値を取得
n = int(raw_input())
x = 0.0
y = 0.0
#操作をリストに詰める。テストケースのための処理
si =[]
for i in range(n):
    si.append(raw_input().split(" "))
#操作ごとに処理を分岐
for s in si:
    c = int(s[1])
    if s[0] == "1":
        x+=c
    elif s[0] == "2":
        y+=c
    elif s[0] == "3":
        xy = x+y #xが変わってしまうのでx+yを一時保存
        x-=c*x/xy
        y-=c*y/xy
print int(100*y/(x+y))
霧島京子

#再帰関数 探索して0かゲームオーバーになった位置を返す
def searchEndNumber(now,squares,past):
    if now < 0 or len(squares) <= now:
        return now # 値域外ならゲームオーバー
    current = int(squares[now])
    if current == 0 or now in past:
        return now # 0か既に通ったマスなら抜ける
    else:
        past.append(now) # 通ったマスを記録
        return searchEndNumber(now+current,squares,past) #次のマスに移動
# 標準入力から値を取得
n = int(raw_input())
squares = raw_input().split(" ")
m = int(raw_input())
for i in range(m):
  # 探索して最後のマスがゴールのマスならYesを出力
    if searchEndNumber(int(raw_input()),squares,[])+1 == n:
        print "Yes"
    else:
        print "No"
緑川つばめ
#最易問題
n = raw_input()
print int(n)+int(n[0])+int(n[1])
感想
     
  • 問題簡単。でもケアレスミスで1時間近くかかった。
  •  
  • 提出して間違うと書いたコードが全部消えるのがつらかった。(送られてくるメールにコードが書いてあるので復旧可能)
  •  
  • 「古代コボール文明」とかいうセンスすき。可愛い立ち絵すき。寒いセリフ回しきらい。
  •  
  • 型推論とはなんだったのか。