#include <bits/stdc++.h>
using namespace std;
string a, b, c;
int main() {
ios_base::sync_with_stdio(0);
cin >> a >> b >> c;
for (auto &i : a) i -= '0';
for (auto &i : b) i -= '0';
for (auto &i : c) i -= '0';
int biez = 0;
bool przen = 0;
int64_t wyn = 0;
for (int i = a.size() - 1; i >= 0; i--) {
int suma = a[i] + b[i] + przen;
if (c[i] == suma) {
biez++;
wyn += biez;
przen = 0;
} else if (c[i] + 10 == suma) {
przen = 1;
} else {
biez = 0;
if (przen) {
przen = 0;
i++;
}
}
}
cout << wyn << endl;
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #include <bits/stdc++.h> using namespace std; string a, b, c; int main() { ios_base::sync_with_stdio(0); cin >> a >> b >> c; for (auto &i : a) i -= '0'; for (auto &i : b) i -= '0'; for (auto &i : c) i -= '0'; int biez = 0; bool przen = 0; int64_t wyn = 0; for (int i = a.size() - 1; i >= 0; i--) { int suma = a[i] + b[i] + przen; if (c[i] == suma) { biez++; wyn += biez; przen = 0; } else if (c[i] + 10 == suma) { przen = 1; } else { biez = 0; if (przen) { przen = 0; i++; } } } cout << wyn << endl; return 0; } |
English