Informatică, întrebare adresată de Elena1elle, 9 ani în urmă

Cerința
Se dă următorul şir de numere naturale:
(1, 21, 321, 4321, 54321, 654321, 7654321, 87654321, 987654321, 10987654321, ...). Al x-lea termen este format prin alipirea primelor x numere naturale nenule. Determinaţi câte din primele n numere ale şirului sunt divizibile cu 3.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieșire
Programul va afișa pe ecran numărul c, reprezentând câte din primele n numere din şir sunt divizibile cu 3.

Restricții și precizări
1 ≤ n ≤ 2.000.000.000

Exemplu
Intrare

3
Ieșire

2
Explicație
Primele 3 numere sunt : 1, 21, 321. Din cele 3 numere doar 2 sunt divizibile cu 3. (21 si 321).

Răspunsuri la întrebare

Răspuns de express
11
#include <iostream>
using namespace std;
int n;
int main()
{
    cin >> n;
    if(n == 1) {cout << 0; return 0;}
    if(n % 3 == 0) cout << (n/3) * 2;
    if(n % 3 == 1) cout << (n/3) * 2;
    if(n % 3 == 2) cout << (n/3) * 2 + 1;
    return 0;
}


Elena1elle: multumesc mult
Alte întrebări interesante