Rezolvare completă PbInfo #1298 Suma34

Cerința

Fiind dat un număr natural n, se cere să se calculeze suma cifrelor numărului care reprezintă numărul de numere de n cifre formate cu cifrele 3 şi 4.

Date de intrare

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

Date de ieșire

Programul va afișa pe ecran numărul S, reprezentând suma cerută.

Restricții și precizări

  • 1 ≤ n ≤ 100.000

Exemplu

Intrare

4

Ieșire

7

Explicație

Numerele de 4 cifre formate cu cifrele 3 şi 4 sunt 3333 , 3334 , 3343 , 3433 , 4333 , 3344 , 3434 , 4334 , 4343 , 4433 , 3443 , 3444 , 4344 , 4434 , 4443 , 4444. Deci sunt 16 numere, iar suma cifrelor este S=7.

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema Suma34:

#include <iostream>

using namespace std;
long n , m , i , s , j , a[100000] , t , x ;

int main()
{
    cin >> n ;
    a[1] = 1 ;
    m = 1 ;
    for ( i = 1 ; i <= n ; i++ )
      {
        t = 0 ;
        for ( j = 1 ; j <= m ; j++ )
          {
              x = a[j] ;
              a[j] = ( a[j] * 2 + t ) % 10000 ;
              t = ( x * 2 + t ) / 10000 ;
          }
        if ( t > 0 ) { m++ ; a[m] = t ;}
      }
     s = 0 ;
     for ( i = 1 ; i <= m ; i++ )
     {
         x = a[i] ;
         while ( x != 0)
          {
              s = s + x % 10 ;
              x = x / 10 ;
          }
     }
     cout << s ;
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #1298 Suma34

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1298 Suma34 de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!