Þetta er gagnvirkt verkefni.
Little Cyan Fish er með leynilega heiltölu $a$ ($1 \le a \le 100$). Þú þarft að finna þessa heiltölu.
Í einni fyrirspurn velur þú heiltölu $x$. Little Cyan Fish segir þér hvort $x$ sé jafnt leynilegu heiltölunni hans. Finndu leynilegu heiltöluna í mesta lagi $100$ fyrirspurnum.
Samskipti
Til að gera fyrirspurn skaltu prenta línu á eftirfarandi sniði: "$?\ x$", þar sem $x$ er heiltala ($1 \le x \le 100$). Sem svar við fyrirspurninni færðu eitt orð yes eða no, sem þýðir að $x = a$ eða $x \ne a$, í sömu röð. Þú verður að tryggja að fjöldi fyrirspurna sem þú gerir fari ekki yfir $100$.
Til að tilkynna svarið skaltu prenta línu á eftirfarandi sniði: "$!\ x$", þar sem $x$ er leynilega heiltalan. Að tilkynna svarið telst ekki sem fyrirspurn. Að fá yes lýkur ekki samskiptunum: þú verður samt að tilkynna svarið. Forritið þitt verður að hætta keyrslu strax eftir að svarið hefur verið tilkynnt. Eftir að hafa prentað fyrirspurn eða tilkynnt svarið skaltu ekki gleyma að prenta nýlínustaf og tæma úttaksstrauminn (flush).
Í þessu verkefni er samskiptaforritið (interactor) ekki aðlögunarhæft (adaptive). Leynilega heiltalan er ákveðin áður en samskiptin hefjast og breytist ekki á meðan á samskiptunum stendur.
Dæmi
Inntak 1
no no yes
Úttak 1
? 1 ? 2 ? 3 ! 3
Athugasemd
Í fyrra dæminu er leynilega heiltalan $3$. Fyrirspurnirnar með $x = 1$ og $x = 2$ fá no, og fyrirspurnin með $x = 3$ fær yes. Lausnin tilkynnir síðan ! 3.
Í seinna dæminu er leynilega heiltalan $1$. Fyrsta fyrirspurnin fær yes, og lausnin tilkynnir ! 1.
Prófunartól: Prófunartól er lagt til svo keppendur geti þróað og prófað lausnir sínar. Þú getur sótt þetta tól í viðhengjunum. Að keyra tólið með valkostinum -h lýsir því hvernig á að nota það. Tólið athugar samskiptin og tilkynnta svarið, en framfylgir ekki tíma- eða minnismörkum.