ITI0011-2016:KT1
Mine navigeerimisribale
Mine otsikasti
Kirjuta funktsioon, mis jagab mitte-negatiivsete arvude massiivi kaheks võimalikult võrdse summaga osaks. Tagastada tuleb indeks, mis jääb teise osa algusesse. Kui massiivi ei saa jagada, tagastada -1. Kui massiivi saab jagada mitmest kohast nii, et vahe oleks võrdne, tuleb tagastada kõige esimene võimalik indeks.
Näiteks:
[1, 2, 3] => 2 (jagamine toimuks nii: [1, 2] ja [3], poolte summad on võrdsed) [1] => 0 (jagamine: [] ja [1]. Saaks jagada ka [1] ja [0], mis on sama suure vahega, aga tagastada tuli variant, kus esimene pool on minimaalne) [] => -1 [1, 1, 1] => 1 (võimalik jagada [1] ja [1, 1] – summad vastavalt 1 ja 2 – või [1, 1] ja [1] – summad 2 ja 1. Esimesel juhul on murdekoht väiksem, seega tagastatakse 1) [6, 1] => 1 (jagatakse [6] ja [1]
Kaust gitis: KT1
Mall:
<source lang="java"> public static int splitArray(int[] a) { } </source>