Cod sursa(job #2562492)
| Utilizator | Data | 29 februarie 2020 14:59:02 | |
|---|---|---|---|
| Problema | A+B | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | teme_upb | Marime | 0.45 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main() {
ifstream f("adunare.in");
ofstream g("adunare.out");
int a, b;
f >> a >> b;
int mask, a_bit, b_bit;
int transp = 0, result = 0;
for (mask = 1; mask; mask <<= 1) {
result |= (a_bit = a & mask) ^ (b_bit = b & mask) ^ transp;
transp = (a_bit & b_bit) | (a_bit & transp) | ( b_bit & transp);
transp <<= 1;
}
g << result;
}