結果

問題 No.3 ビットすごろく
ユーザー mmmppp
提出日時 2017-02-24 17:40:23
言語 Ruby
(3.4.1)
結果
WA  
実行時間 -
コード長 230 bytes
コンパイル時間 368 ms
コンパイル使用メモリ 8,192 KB
実行使用メモリ 13,440 KB
最終ジャッジ日時 2025-01-02 22:02:35
合計ジャッジ時間 4,090 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 13 WA * 20
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N=gets.to_i
A=(1..N).map{|i|i.to_s(2).count ?1}
h=->n,r{
  if n < 4
    ([*1..n]+r|[]).size
  else
    b=n.bit_length
    m=([*n-b+1..N]-r).select{|i|A[i-1]+i==n||A[i-1]-i==n}.min
    break -1if !m
    h[m,r<<m]
  end
}
p h[N,[N]]
0