Drvoseča Milan je otvorio radnju. Njegova testera stoji na stalku koji može da se podesi na bilo koju celobrojnu visinu u metrima, i tako seče svako drvo u šumi tačno na toj visini. Pada samo deo drveta iznad sečiva - drvo koje nije više od sečiva ostaje netaknuto.
Sada mu dolazi mušterija, jedna za drugom, i svaka naručuje neku količinu drveta. Milan i dalje brine o šumi, pa za svaku porudžbinu želi da podesi testeru što više može, a da i dalje dobije bar naručenu količinu.
Porudžbine su nezavisne - Milan svaku od njih planira za istu netaknutu šumu, pa se visine drveća nikada ne menjaju.
Ulaz
U prvoj liniji ulaza je jedan ceo broj - broj test primera.
U prvoj liniji svakog test primera su dva cela broja i - broj drveća u šumi i broj porudžbina.
U drugoj liniji je celih brojeva - visine drveća.
U trećoj liniji je celih brojeva - naručene količine drveta.
Izlaz
Za svaku porudžbinu ispiši u posebnoj liniji najveću visinu na koju testera može da se podesi.
Primer
2 5 3 24 21 19 14 22 14 40 1 1 2 7 7 3
18 12 23 0 4
Prva šuma ukupno ima metara drveta. Za porudžbinu od metara testera ide na ; za metara mora da se spusti na , gde svih pet stabala zajedno daje tačno ; a za jedan metar je dovoljno skinuti vrh najvišeg stabla, sa sečivom na .
Ograničenja
- u šumi uvek ima dovoljno drveta
Zadatak je, uz dozvolu, preuzet iz zadatka Drva, čiji su autori Društvo matematičara Srbije i Fondacija Petlja.