Editorial for Nadovezivanje


Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.

Submitting an official solution before solving the problem yourself is a bannable offence.

Analiza

Zadatak rešavamo jednostavnom proverom slučajeva, napravimo svih 6 permutacija i proverimo koja ima najveću vrednost. Primetimo da su brojevi preveliki da bi stali u tip int u C++, ali možemo koristiti tip long long. Međutim, najpogodnije je da brojeve učitamo kao string. Tada se operacija spajanja tri broja u nekom redosledu svodi na konkateniranje stringova. U C++ konkateniranje dva stringa A i B realizujemo sa A+B. Funkcija max u C++ vraća leksikografski veći string, ako su joj argumenti stringovi. U našem slučaju, pošto će svih 6 permutacija (A+B+C, A+C+B, B+A+C, B+C+A, C+A+B i C+B+A) imati istu dužinu, leksikografski najveća permutacija je i najveći broj koji možemo dobiti pri spajanju brojeva A, B i C.


Comments

There are no comments at the moment.