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 o
1
şi o
2
sunt operatori.
Valorile permise operanzilor pot fi numai termeni din şirul x
1
, x
2
, …, x
n
, 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
, x
1
, x
2
, …, x
n
şi o
1
, o
2
date, determină indicii corespunzători termenilor din şirul x
1
, x
2
, …, x
n
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
, x
1
, x
2
, …, x
n
separate între ele printr-un spaţiu şi pe linia a doua exact două caractere asociate operatorilor o
1
şi o
2
.
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 x
1
, x
2
, …, x
n
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 < 10001
0 ≤ x
1
,x
2
, …,x
n
< 1001
0 ≤ 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 = x
5
, B = x
3
, C = x
1
Expresia devine 20 + 2 * 40 = 100