結果
| 問題 |
No.3 ビットすごろく
|
| コンテスト | |
| ユーザー |
kwnwsdnc
|
| 提出日時 | 2018-03-29 23:45:50 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 745 bytes |
| コンパイル時間 | 198 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 11,648 KB |
| 最終ジャッジ日時 | 2024-06-26 00:06:52 |
| 合計ジャッジ時間 | 19,506 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 8 WA * 16 RE * 9 |
ソースコード
def count(n):
a=0
num=str(bin(n))
ln=len(num)
for i in range(ln):
if num[i]=='1':
a+=1
return a
def minus(m,i):
n=m[i]
if i==0:
return -1
if (str(n-count(n)) in str(m))==False:
return n-count(n)
else:
return minus(m,i-1)
def sugoroku(N):
p=[]
p.append(1)
i=0
if N==1:
return 0
while 1>0:
if p[i]+count(p[i])==N:
return i+1+1
elif p[i]+count(p[i])<N:
p.append(p[i]+count(p[i]))
i+=1
else:
if minus(p,i)==-1:
return -1
else:
p.append(minus(p,i))
i+=1
N=int(input())
print(sugoroku(N))
kwnwsdnc