Soluții trimise

Rezumat problemă

#2428

Balaurului Arhirel nu îi plac prea mult şirurile care nu sunt ordonate. Din acest motiv, nu poate să suporte permutările de N elemente, aşa că se decide să le sorteze şi pentru asta inventează o metodă proprie de sortare.
El ia iniţial un şir S care reprezintă o permutare de ordin N. Caută în şirul S cel mai mic (min) şi cel mai mare element (max). Să considerăm că min se află în şirul S pe poziţia pmin, iar max pe poziţia pmax. Să notăm cu x minimul dintre pmin şi pmax, iar cu y maximul dintre pmin şi pmax. Şirul S a fost astfel partiționat în alte trei şiruri, S1, S2, S3 care pot avea fiecare zero elemente, un element sau mai multe elemente. Şirul S1 începe la prima poziţie din şir şi se termină la poziţia x-1. Şirul S2 începe la poziţia x+1 şi se termină la poziţia y-1. Şirul S3 începe la poziţia y+1 şi se termină la ultima poziţie din şir.
Balaurul Arhirel mută valoarea min la capătul din stânga al lui S, iar valoarea max la capătul din dreapta al şirului S şi reia sortarea pentru fiecare din şirurile S1, S2, S3.
Evident, această metodă nu va funcţiona întotdeauna pentru sortarea unei permutări.
Spre exemplu, pentru şirul S = (3 4 1 6 5 2), se găseşte min = 1 şi max = 6, iar S1 = (3 4), S2 = (), S3 = (5 2). Se mută min şi max la capetele lui S: S = (1 3 4 5 2 6) şi se procedează la sortarea pe rând a şirurilor S1, S2, S3. S1 este sortat, S2 nu are elemente, iar S3 va deveni S3 = (2 5). În final, S = (1 3 4 2 5 6).
Ajutaţi-l pe Balaurul Arhirel să afle câte dintre permutările de N elemente pot fi sortate prin metoda sa.

ID   Utilizator Problema Data încărcării Stare
Peter Tobias (PeterTobias) sortari 09 Aprilie 2026, 19:43 Evaluare finalizată 100
Atitienei Ekaterina-Gabriela (Atitienei_Ekaterina) sortari 15 Martie 2026, 15:39 Evaluare finalizată 100
Atitienei Ekaterina-Gabriela (Atitienei_Ekaterina) sortari 15 Martie 2026, 15:39 Evaluare finalizată 100
Anghel Maria Cornelia (AnghelMariaCornelia) sortari 15 Martie 2026, 15:38 Evaluare finalizată 100
Anghel Maria Cornelia (AnghelMariaCornelia) sortari 15 Martie 2026, 15:33 Evaluare finalizată 20
Cismaru Eric-Dimitrie (Eric_278) sortari 14 Martie 2026, 16:42 Evaluare finalizată 100
Grecu Vlad Ştefan (vladinfo) sortari 14 Martie 2026, 11:14 Evaluare finalizată 100
Anghel Maria Cornelia (AnghelMariaCornelia) sortari 14 Martie 2026, 10:59 Evaluare finalizată 10
Dimitriu Flaviu (flaviu_dimitriu) sortari 14 Martie 2026, 10:53 Evaluare finalizată 100
Dimitriu Flaviu (flaviu_dimitriu) sortari 14 Martie 2026, 10:53 Evaluare finalizată 60
Radu Ilinca-Rucsandra (Ilinca_Radu_2021) sortari 14 Martie 2026, 10:33 Evaluare finalizată 100
Obreja Andrei-Luca (Andrei_Obreja) sortari 14 Martie 2026, 10:31 Evaluare finalizată 100
Obreja Andrei-Luca (Andrei_Obreja) sortari 14 Martie 2026, 10:30 Evaluare finalizată 100
Obreja Andrei-Luca (Andrei_Obreja) sortari 14 Martie 2026, 10:30 Evaluare finalizată 0
Obreja Andrei-Luca (Andrei_Obreja) sortari 14 Martie 2026, 10:28 Evaluare finalizată 10
Obreja Andrei-Luca (Andrei_Obreja) sortari 14 Martie 2026, 10:27 Evaluare finalizată 10
Grecu Silvia (sgrecu) sortari 03 Martie 2026, 18:35 Evaluare finalizată 100
Georgescu Rares (Rares_Georgescu) sortari 22 Ianuarie 2026, 22:30 Evaluare finalizată 100
Georgescu Rares (Rares_Georgescu) sortari 22 Ianuarie 2026, 22:30 Evaluare finalizată E.C
. . (rexzy1000) sortari 08 Noiembrie 2025, 09:16 Evaluare finalizată 100
NITA Mioara (Mioara_NITA) sortari 20 August 2025, 14:24 Evaluare finalizată 100
Raduta Mihail (Mihailraduta) sortari 13 August 2025, 11:26 Evaluare finalizată 100
Nicusor Dan Nicusor Dan (Nicusor_Dan) sortari 17 Mai 2025, 06:29 Evaluare finalizată 100
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:59 Evaluare finalizată 10
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:59 Evaluare finalizată 10
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:58 Evaluare finalizată 10
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:57 Evaluare finalizată E.C
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:57 Evaluare finalizată E.C
Prisecaru Matei (Mateiul2578) sortari 23 Aprilie 2025, 13:55 Evaluare finalizată 0
Iulian Coroban (CIulian34) sortari 23 Aprilie 2025, 13:49 Evaluare finalizată 0
Budeanu Ioan (ioanxh_9) sortari 25 Martie 2025, 10:43 Evaluare finalizată 100
Aninis Catrinel (Nieeez) sortari 24 Martie 2025, 17:00 Evaluare finalizată 20
POPESCU ANDREI (andreip99) sortari 14 Septembrie 2024, 09:14 Evaluare finalizată 100
pitigoi emi (emanuel2020) sortari 25 August 2024, 15:26 Evaluare finalizată 100
pitigoi emi (emanuel2020) sortari 25 August 2024, 14:46 Evaluare finalizată 20
Costea Sasha (gosasha) sortari 11 Iunie 2024, 19:10 Evaluare finalizată 100
Lensu Alexandru (Lensu) sortari 16 Aprilie 2024, 13:36 Evaluare finalizată 100
Lensu Alexandru (Lensu) sortari 16 Aprilie 2024, 13:32 Evaluare finalizată 100
Lensu Alexandru (Lensu) sortari 16 Aprilie 2024, 13:32 Evaluare finalizată 20
Lensu Alexandru (Lensu) sortari 16 Aprilie 2024, 13:30 Evaluare finalizată 10
Negret Bianca (Bianca2507) sortari 15 Aprilie 2024, 20:01 Evaluare finalizată 100
Raileanu Alexandru (AlexandruR2008) sortari 03 Aprilie 2024, 13:27 Evaluare finalizată 100
Moldovan Laura (laura2019) sortari 20 Decembrie 2023, 20:06 Evaluare finalizată 100
Moldovan Laura (laura2019) sortari 20 Decembrie 2023, 19:54 Evaluare finalizată 10
Anca Leuciuc (AncaLeuciuc) sortari 10 Decembrie 2023, 23:02 Evaluare finalizată 100
Draguta Mihai (Draguta_Mihai) sortari 23 Noiembrie 2023, 19:36 Evaluare finalizată 100
Draguta Mihai (Draguta_Mihai) sortari 23 Noiembrie 2023, 19:17 Evaluare finalizată E.C
SS KMF (SSKMF) sortari 11 Septembrie 2023, 14:10 Evaluare finalizată 100
Dracea Andora (Andora_fan) sortari 07 August 2023, 15:57 Evaluare finalizată 100
Adrian Statescu (thinkphp) sortari 04 Iulie 2023, 07:37 Evaluare finalizată 100
Du-te sus!