結果
| 問題 |
No.688 E869120 and Constructing Array 2
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-10-27 22:31:44 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 44 ms / 1,000 ms |
| コード長 | 698 bytes |
| コンパイル時間 | 448 ms |
| コンパイル使用メモリ | 82,292 KB |
| 実行使用メモリ | 61,328 KB |
| 最終ジャッジ日時 | 2024-10-27 22:31:47 |
| 合計ジャッジ時間 | 2,050 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 10 |
ソースコード
dp = [[0 for _ in range(30+1)] for _ in range(30+1)]
for n in range(30+1):
dp[n][0] = 1
for n in range(1,30+1):
for k in range(1,n+1):
dp[n][k] = dp[n-1][k-1]+dp[n-1][k]
K = int(input())
if K==0:
print(1)
print(1)
elif K==1:
print(2)
print(1,1)
else:
ans = 0
for N in range(2,30+1):
for N1 in range(2,N+1):
cnt = 0
for k in range(2,N-N1+3):
cnt += dp[N1][2]*dp[N-N1][k-2]
if cnt==K:
ans = (N,N1)
break
if ans!=0:break
if ans!=0:break
n = ans[0]
n1 = ans[1]
b = [0]*n
for i in range(n1):
b[i] = 1
print(n)
print(*b)