結果

問題 No.5003 物理好きクリッカー
ユーザー ebicochinealebicochineal
提出日時 2018-12-04 01:18:08
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 558 ms / 10,000 ms
コード長 2,327 bytes
コンパイル時間 56 ms
実行使用メモリ 22,888 KB
スコア 897,071,511
平均クエリ数 10000.00
最終ジャッジ日時 2021-07-19 08:17:16
合計ジャッジ時間 19,670 ms
ジャッジサーバーID
(参考情報)
judge15 / judge12
純コード判定しない問題か言語
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 510 ms
22,484 KB
testcase_01 AC 491 ms
22,476 KB
testcase_02 AC 490 ms
22,308 KB
testcase_03 AC 513 ms
22,520 KB
testcase_04 AC 519 ms
22,396 KB
testcase_05 AC 517 ms
22,288 KB
testcase_06 AC 518 ms
22,312 KB
testcase_07 AC 495 ms
22,372 KB
testcase_08 AC 498 ms
22,712 KB
testcase_09 AC 504 ms
22,612 KB
testcase_10 AC 523 ms
22,388 KB
testcase_11 AC 494 ms
22,524 KB
testcase_12 AC 494 ms
22,400 KB
testcase_13 AC 506 ms
22,472 KB
testcase_14 AC 511 ms
22,540 KB
testcase_15 AC 493 ms
22,652 KB
testcase_16 AC 511 ms
22,224 KB
testcase_17 AC 498 ms
22,396 KB
testcase_18 AC 486 ms
22,368 KB
testcase_19 AC 486 ms
22,628 KB
testcase_20 AC 497 ms
22,432 KB
testcase_21 AC 494 ms
22,420 KB
testcase_22 AC 491 ms
22,696 KB
testcase_23 AC 485 ms
22,312 KB
testcase_24 AC 481 ms
22,564 KB
testcase_25 AC 479 ms
22,632 KB
testcase_26 AC 492 ms
22,304 KB
testcase_27 AC 507 ms
22,452 KB
testcase_28 AC 509 ms
22,684 KB
testcase_29 AC 487 ms
22,296 KB
testcase_30 AC 558 ms
22,472 KB
testcase_31 AC 512 ms
22,384 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#! /usr/bin/env python3
import sys
n = int(input())
s = input()
c = 0
####################
base = {'hand':150, 'lily':2000, 'factory':30000, 'casino':600000, 'grimoire':10000000}
basecookie = {'hand':1, 'lily':10, 'factory':120, 'casino':2000, 'grimoire':25000}
b = {'hand':150, 'lily':2000, 'factory':30000, 'casino':600000, 'grimoire':10000000}
cookie = {'hand':1, 'lily':0, 'factory':0, 'casino':0, 'grimoire':0}
r = {'hand':0, 'lily':1, 'factory':1, 'casino':1, 'grimoire':1}
buy = {'hand':1, 'lily':0, 'factory':0, 'casino':0, 'grimoire':0}
g = {'hand':12, 'lily':9, 'factory':9, 'casino':9, 'grimoire':15}
x = {'hand':1, 'lily':1, 'factory':1, 'casino':1, 'grimoire':1}
fever = 0
ss=''
for i in range(n):
    if 'F' == ss : fever = 20
    tc = c
    # print(c, d, file=sys.stderr)
    f=0
    cmd = ''
    if cmd == '' and i >= n - 1 - buy['grimoire']:
        cmd = 'sell grimoire'
    if cmd == '':
        for k in b:
            if k == 'hand' and c > (base[k] // 10) * (11 ** r[k]) * [1.0, 0.9]['S' == ss] and r[k]<3 and buy[k] > 0:
                cmd += 'enhclick'
                c -= (base[k] // 10) * (10 ** r[k])
                x[k] += 1
                r[k] += 1
                break
            elif c > base[k] * (11 ** r[k]) * [1.0, 0.9]['S' == ss] and r[k]<2 and buy[k] > 0:
                if i > n-400 : continue
                cmd += 'reinforce ' + k
                c -= base[k] * (10 ** r[k])
                x[k] += 1
                r[k] += 1
                break
    if cmd == '':
        for k in b:
            if c > b[k] * [1.0, 0.9]['S' == ss]  and buy[k] < g[k]+(buy['grimoire']>=8 and x['grimoire']==2 and k == 'casino')*8:
                if i > n-400 : continue
                cmd += 'buy ' + k
                c -= b[k]
                b[k] = int(1.2 * b[k])
                cookie[k] += basecookie[k]
                buy[k] += 1
                break
    
    if cmd == '' :
        cmd = 'click'
        f=1
    else:
        # print(i, tc, c, cookie, file=sys.stderr)
        f=0

    for k, v in cookie.items():
        if k == 'hand' and f:
            c += v * x[k] * [1,7][fever > 0]
        else:
            c += v * x[k] * [1,7][fever > 0]
    fever -= 1
    print(cmd)####################
    input()####################
    ss = s[i]
print(c, cookie, file=sys.stderr)


0