結果

問題 No.2939 Sigma Popcount Problem
ユーザー eve__fuyuki
提出日時 2024-10-19 02:43:06
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 66 ms / 2,000 ms
コード長 437 bytes
コンパイル時間 2,049 ms
コンパイル使用メモリ 191,800 KB
最終ジャッジ日時 2025-02-24 21:26:22
ジャッジサーバーID
(参考情報)
judge3 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;

void fast_io() {
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
}

int main() {
	fast_io();
	int t;
	cin >> t;
	for (; t--;) {
		long long n;
		cin >> n;
		// sum_{i = 1}^n popcount(i)
		long long ans = 0;
		for (long long i = 1; i <= n; i <<= 1) {
			ans += (n / (i << 1)) * i;
			ans += max(0LL, n % (i << 1) - i);
		}
		ans += __builtin_popcountll(n);
		cout << ans << '\n';
	}
}
0