👤

IV. Informatică Fie n ≤ 100 un număr natural nenul şi x1,...,xn un vector v de numere întregi, cu proprietatea |xi| ≤ 32000, oricare ar fi i de la 1 la n.

a) Să se scrie un program care va afişa un k = {1,..., n} şi k indici 1 ≤ i1 < i2 < ... < ik ≤ n astfel încât n divide pe xi1 + xi2 +.... + xik sau va afişa 0 dacă nu există un astfel de k.

b) Există un algoritm liniar (în timp O(n) în raport cu dimensiunea n a vectorului v) pentru cerinţa de la punctul a)? Dacă da, să se implementeze acest algoritm sub formă de program.

Programele vor fi scrise într-unul dintre limbajele studiate în liceu (Pascal, C,C++). Pentru fiecare soluţie se vor preciza detaliile algoritmului folosit şi ale implementării sub formă de program: variabile, structuri de date, structuri iterative, instrucţiuni condiţionale.​