Cerința
Se dau două numere naturale a
și b
. Calculați suma numerelor echilibrate din intervalul [a,b]
. Un număr este echilibrat dacă are număr par de cifre si are numărul de cifre pare egal cu numărul de cifre impare. De exemplu 3427
este echilibrat, iar 2333
nu este.
Date de intrare
Programul citește de la tastatură numerel a
și b
.
Date de ieșire
Programul va afișa pe ecran numărul s
, reprezentând suma numerelor echilibrate din intervalul [a,b]
.
Restricții și precizări
1 ≤ a ≤ b ≤ 1.000.000
Exemplu
Intrare
56 71
Ieșire
509
Explicație
În intervalul [56,71]
numerele echilibrate sunt 56
, 58
, 61
, 63
, 65
, 67
, 69
, 70
, iar suma lor este 509
.
#include <bits/stdc++.h> using namespace std; int main(){ int a, b; long long s = 0; cin >> a >> b; for(int i = a; i <= b; ++i){ int n = i, cntp = 0, cnti = 0; while(n){ if(n % 2 == 0) cntp++; else cnti++; n/=10; } if(cntp == cnti) s += i; } cout << s; return 0; }