Informatică, întrebare adresată de alexalghisi, 8 ani în urmă

Răzvan îşi dezvoltă abilităţile de calcul pe baza unui joc inventat de Diana, sora lui mai mare. Jocul conţine mai multe cartonaşe. Pe fiecare cartonaş este scris câte un număr natural. Răzvan extrage, la întamplare, două cartonaşe şi trebuie să le aşeze unul langă altul astfel încât să obţină cel mai mare număr posibil. De exemplu, dacă numerele scrise pe cele două cartonaşe sunt a=543 şi b=78, el poate obţine fie numărul 54378, punând al doilea cartonaş după primul, fie numărul 78543, aşezând al doilea cartonaş pe primul loc. În mod evident, numărul cel mai mare obţinut este 78543. Dar Răzvan trebuie în plus să şi tripleze acest număr, obţinând astfel prin înmulţirea lui 78543 cu 3, rezultatul 235629. Diana doreşte să verifice automat rezultatele obţinute de fratele său şi vă roagă să o ajutaţi.

Exemplu:
543 78
Raspuns:
235629

Explicatie:
Pentru a obţine un număr maxim, Răzvan lipeşte numerele în ordinea 78, 543 şi formează numărul 78543. Apoi triplează (înmulţeşte cu 3) acest număr şi obţine rezultatul 235629.

Răspunsuri la întrebare

Răspuns de Petruccinator
0

#include <iostream>

#include <sstream>

int main(){

   int s, a, b;

   std::cin >> a >> b;

   if(a > b)

       std::swap(a, b);

   std::ostringstream x;

   x << a << b;

   s = atoi(x.str().c_str()) * 3;

   std::cout << s;

}


alexalghisi: Nice !
Alte întrebări interesante