September 2019 1 185 Report

Luați o secvență de 2n numere reale ca intrare. Realizați un algoritm O(n log n) care împarte numerele în n perechi, cu proprietatea
că partiția minimizează suma maximă a unei perechi.

De exemplu, spunem noi, sunt numerele (1,6,3,7), partițiile posibile sunt
( (1,6), (3,7) ), ( (1,3), (6,7) ) și ( (1,7), (3,6) ).
Sumele pereche pentru aceste partiții sunt (4,13), (7,10) și (8,9). Astfel, a treia partiție are 9 ca suma maximă, adică
minimul pe cele trei partiții.

Rezolvarea sa fie în C sau C++. (As dori în special in C, dar merge si in C++).
Vă rog!

Smile Life

Show life that you have a thousand reasons to smile

Get in touch

© Copyright 2024 DOKU.TIPS - All rights reserved.