結果
問題 |
No.2939 Sigma Popcount Problem
|
ユーザー |
![]() |
提出日時 | 2025-03-18 13:28:51 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 1,497 ms / 2,000 ms |
コード長 | 464 bytes |
コンパイル時間 | 12,581 ms |
コンパイル使用メモリ | 242,676 KB |
実行使用メモリ | 8,096 KB |
最終ジャッジ日時 | 2025-03-18 13:29:18 |
合計ジャッジ時間 | 25,294 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
package main import . "fmt" func main() { b := make([]int64, 64) for i, s := 0, int64(0); i < 62; i++ { b[i] = s+1 s += b[i]+(1<<i-1) } var c func(x int64) int64 c = func(x int64) (s int64) { for i := 61; i >= 0; i-- { if (x&(1<<i)) != 0 { x -= (1<<i) s += b[i] + x } } return } var t int Scan(&t) for ; t>0; t-- { var n int64 Scan(&n) Println(c(n)) } } // 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111