Official
B - Base 2 Editorial by yuto1115
解説for 文等を使って、問題文で書かれている通りに答えを求めればよいです。下記の実装例のようにビットシフト演算子を用いると簡潔です。符号付き 64 bit 整数 (C++ の long long 型など) は表現することのできる値の最大値が \(2^{63}-1\) なので、この問題には適さないことに注意してください (符号なし 64 bit 整数や多倍長整数などを用いるとよいです)。
実装例 (C++) :
#include<bits/stdc++.h>
using namespace std;
using ull = unsigned long long;
int main() {
ull ans = 0;
for (int i = 0; i < 64; i++) {
ull a;
cin >> a;
ans += a << i;
}
cout << ans << endl;
}
実装例 (Python) :
a = list(map(int, input().split()))
ans = 0
for i in range(64):
ans += a[i] << i
print(ans)
posted:
last update: