結果
| 問題 |
No.78 クジ付きアイスバー
|
| コンテスト | |
| ユーザー |
tmentaiko
|
| 提出日時 | 2020-08-27 23:17:05 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 32 ms / 5,000 ms |
| コード長 | 1,076 bytes |
| コンパイル時間 | 98 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 11,008 KB |
| 最終ジャッジ日時 | 2024-11-08 19:00:19 |
| 合計ジャッジ時間 | 2,572 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 35 |
ソースコード
n,k= map(int,input().split())
s=input()
c,z=[0]*n,[0]*n
for i in range(n):
if i==0:c[i],z[i]=1,int(s[i])
else:
at=int(s[i])
if z[i-1]==0:c[i],z[i]=1,at
else:c[i],z[i]=0,z[i-1]+(at-1)
if k<=n:
cost1 =[0]*n
for i in range(n):cost1[i]=c[i]+(0 if i==0 else cost1[i-1])
print(cost1[k-1])
else:
c2,z2=[0]*n,[0]*n
for i in range(n):
at=int(s[i])
if i==0:
if z[-1]>0:c2[i],z2[i]=0,at+z[-1]-1
else: c2[i],z2[i]=1,at
else:
if z2[i-1]==0:c2[i],z2[i]=1,z2[i-1]+ at
else: c2[i],z2[i]=0,z2[i-1]+(at-1)
if sum(c2)==0 and z2[-1]>0:print(sum(c))
else:
b=k//n
e=k%n
cost2 =[0]*n
for i in range(n):
cost2[i]=c2[i] + (0 if i==0 else cost2[i-1])
if sum(c2)==0 and z2[-1]>0:
print(sum(c))
else:
goukei=0
goukei+=sum(c)
goukei+=0 if b==1 else (b-1)*(sum(c2))
if e==0:pass
else:goukei+=cost2[e-1]
print(goukei)
tmentaiko