ITI0011-2016:KT1

Allikas: Kursused
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 class KT1 {

   public static int splitArray(int[] a) {
   }

} </source>