La ora de matematică Georgică a învăţat să evalueze expresii aritmetice. Pentru a verifica acest lucru profesorul de informatică îi propune lui Georgică să evalueze expresii aritmetice de forma:
A o1 B o2 C
Unde A, B, C sunt operanzi, iar o1 şi o2 sunt operatori.
Valorile permise operanzilor pot fi numai termeni din şirul x1, x2, …, xn, iar operatorii pot fi numai caracterele + (adunare) şi * (înmulţire).
Profesorul îi pune la dispoziție lui Georgică o valoare numerică V şi îi cere să determine valorile operanzilor A, B şi C pentru care expresia are valoarea V.
Cerinţă
Scrieţi un program, care pentru V, n, x1, x2, …, xn şi o1, o2 date, determină indicii corespunzători termenilor din şirul x1, x2, …, xn ce corespund valorilor operanzilor A, B şi C pentru ca expresia dată să aibă valoarea V.
Date de intrare
Fişierul de intrare expresie1.in conţine pe prima linie numerele naturale V, n, x1, x2, …, xn separate între ele printr-un spaţiu şi pe linia a doua exact două caractere asociate operatorilor o1 şi o2.
Date de ieşire
Fişierul de ieşire expresie1.out va conţine, pe prima linie separate între ele exact trei indici ai şirului x1, x2, …, xn corespunzători termenilor folosiţi pentru A, B, C. Dacă nu există soluţie se va scrie în fişier cifra 0 de trei ori separată prin câte un spaţiu: 0 0 0.
Restricţii şi precizări
0 < n < 100010 ≤ x1,x2, …,xn< 10010 ≤ V < 2000000001- Se poate folosi acelaşi termen din şir pentru
A,BşiC.
Exemplu
expresie1.in
100 5 40 13 2 11 20 +*
expresie1.out
5 3 1
Explicaţie
A = x5, B = x3, C = x1
Expresia devine 20 + 2 * 40 = 100