結果
問題 |
No.1288 yuki collection
|
ユーザー |
|
提出日時 | 2021-02-17 08:03:23 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 717 bytes |
コンパイル時間 | 428 ms |
コンパイル使用メモリ | 82,116 KB |
実行使用メモリ | 77,132 KB |
最終ジャッジ日時 | 2024-09-13 18:41:30 |
合計ジャッジ時間 | 5,146 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 10 WA * 30 |
ソースコード
n=int(input()) s=list(input()) v=list(map(int,input().split())) taken=[0]*n pre=-1 ans=0 while pre!=ans: y=[0,-1] yu=[0,-1,-1] yuk=[0,-1,-1,-1] yuki=[0,-1,-1,-1,-1] pre=ans for i in range(n): if taken[i]==1:continue if s[i]=='y': if y[0]<v[i]: y=[v[i],i] elif s[i]=='u' and y[0]>0: if yu[0]<v[i]+y[0]: yu=[v[i]+y[0],y[1],i] elif s[i]=='k' and yu[0]>0: if yuk[0]<v[i]+yu[0]: yuk=[v[i]+yu[0],yu[1],yu[2],i] elif s[i]=='i' and yuk[0]>0: if yuki[0]<v[i]+yuk[0]: yuki=[v[i]+yuk[0],yuk[1],yuk[2],yuk[3],i] if yuki[0]>0: ans+=yuki[0] taken[yuki[1]]=1 taken[yuki[2]]=1 taken[yuki[3]]=1 taken[yuki[4]]=1 print(ans)