Page 21 - MATINF Nr. 11-12
P. 21

a
            Concursul de Informatic˘ Programming Day                                                       21


                Date de ies , ire
                Dac˘ C este 1, fis , ierul de ies , ire partitii.out va cont , ine pe cˆate o linie submult , imile partit , iei
                    a
            de la cerint , a 1, elementele de pe o linie sunt separate printr-un spat , iu s , i sunt scrise ˆın ordine
            cresc˘atoare. Submult , imile partit , iei se vor scrie ˆın ordinea cresc˘atoare a primului element.
                    a
                Dac˘ C este 2, fis , ierul de ies , ire partitii.out va cont , ine num˘arul de la cerint , a 2.
                Restrict , ii s , i preciz˘ari
                • 2 ≤ k ≤ n ≤ 14, n num˘ar par;

                • a 1 , a 2 , . . . , a n sunt numere naturale cu maxim 5 cifre.

                • Pentru toate testele se garanteaz˘a existent , a solut , iei la cerint , a 1.

                                           a
                • Pentru rezolvarea corect˘ a cerint , ei 1 se vor acorda 40 de puncte.
                • Pentru rezolvarea corect˘ a cerint , ei 2 se vor acorda 60 de puncte.
                                           a
                Exemplu

                             partitii.in                      partitii.out
                             1                                1 9
                             4 2                              2 8
                             9 2 1 8
                             2                                6
                             4 2
                             9 2 1 8


                Explicat , ii
                Pentru cerint , a 1 o partit , ie cu mult , imi de dou˘ elemente este
                                                              a
                {2, 8} {1, 9}, fiecare submult , ime are 2 elemente s , i suma elementelor egal˘ cu 10.
                                                                                          a
                Pentru cerint , a 2 sunt 6 partit , ii 2-speciale:
                {9} {2, 1, 8}, cu sumele 9 s , i 11

                {2} {9, 1, 8}, cu sumele 2 s , i 18
                {1} {9, 2, 8}, cu sumele 1 s , i 19

                {8} {9, 2, 1}, cu sumele 8 s , i 12

                {9, 2} {1, 8}, cu sumele 11 s , i 9
                {9, 8} {1, 2}, cu sumele 17 s , i 3.

                Timp maxim de execut , ie: 6 secunde/test.
                                 a
                Memorie total˘ disponibil˘a: 2 MB.
                Solut , ie
                Cerint , a 1 ( 40 puncte)

                                                                 a
                Se ordoneaz˘a elementele mult , imii A s , i se afis , eaz˘ partit , ia:
                {a[1], a[n]}, {a[2], a[n − 1]}, . . . , {a[n/2], a[1 + n/2]}

                Cerint , a 2 ( 60 puncte)
                Se genereaz˘a cu backtracking partit , iile cu restrict , iile din enunt , s , i se num˘ar˘a.
   16   17   18   19   20   21   22   23   24   25   26