Gegeven een gesorteerde lijst \((a_0,...,a_{n-1})\) van \(n\) gehele getallen. Bepaal drie verschillende indices \(p\), \(q\), \(r\) zodanig dat voor het triplet \((a_p, a_q, a_r)\) (indien deze bestaan) het volgende geldt: \(a_p + a_q + a_r = 0\).

Opgelet: de gesorteerde invoerlijst kan meerdere keren hetzelfde getal bevatten.

Ontwerp en implementeer een kwadratisch algoritme voor dit probleem. Implementeer hiervoor de interface DrieSomProbleem1 in een klasse genaamd MijnDrieSomProbleem. Hiervoor schrijf je een methode public TripletIndices zoekNulSomTriplet(List<Integer> gesorteerdeInvoer). Deze methode neemt een gesorteerde lijst van gehele getallen als invoer en geeft een object van het type TripletIndices terug. In het teruggegeven object van deze gegeven klasse TripletIndices2 worden de indices opgeslagen van de drie elementen die tot nul sommeren. Indien er zo geen drie elementen bestaan, geeft de methode zoekNulSomTriplet null terug.

Gebruik eventueel de testklasse SimpleTest3 om je oplossing lokaal te testen. Je kan hierin eenvoudig extra testgevallen toevoegen.