From 96254947699986c59f0dc63d69fd4b76bd3ed43e Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Mon, 6 Jul 2026 19:08:08 +0200 Subject: Initial commit --- 13_bitwise_operations/counting_bits_1146.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 13_bitwise_operations/counting_bits_1146.cpp (limited to '13_bitwise_operations/counting_bits_1146.cpp') diff --git a/13_bitwise_operations/counting_bits_1146.cpp b/13_bitwise_operations/counting_bits_1146.cpp new file mode 100644 index 0000000..004dc13 --- /dev/null +++ b/13_bitwise_operations/counting_bits_1146.cpp @@ -0,0 +1,14 @@ +#include + +int main() { + unsigned long long n, f, p, s{0}; + std::cin >> n; + + for (unsigned long long i = 1, m = n; i <= n; i <<= 1, m >>= 1) { + f = i * (m / 2); + p = (n % (2*i)) + 1; + p = p > i ? p - i : 0; + s += f + p; + } + std::cout << s << "\n"; +} -- cgit v1.3