Universal Cup Judging System

Universal Cup

Límite de tiempo: 1 s Límite de memoria: 2048 MB Puntuación total: 100 Dificultad: [mostrar] Interactivo Hackeable ✓
Estadísticas

Þetta er gagnvirkt verkefni.

Little Cyan Fish á falið einfalt óstefnt net með $n$ hnútum, sem eru númeraðir frá $1$ til $n$. Þú veist gildið á $n$, en þú þekkir engan af leggjunum. Little Cyan Fish heldur mikið upp á hugtakið snið (cut). Fyrir mengi hnúta $S$, látum $\operatorname{cut}(S)$ tákna fjölda leggja sem hafa nákvæmlega annan endapunktinn í $S$.

problem_22880_c88365aab9e24b99bbd5b96995883b80.png

Little Cyan Fish leyfir þér að bera saman snið með því að gera fyrirspurnir. Í einni fyrirspurn velur þú tvö mengi hnúta $S_1$ og $S_2$. Little Cyan Fish segir þér hvort $\operatorname{cut}(S_1)$ sé minna en, jafnt og, eða stærra en $\operatorname{cut}(S_2)$.

Þú getur líklega giskað á að næst verði talað um að endurgera netið, en í þetta sinn er verkefnið auðveldara. Little Cyan Fish gefur þér hnút $u$, og hann vill að þú finnir alla hnúta sem eru aðlægir $u$ í mesta lagi $n + 10$ fyrirspurnum.

Inntak

Fyrsta línan í inntakinu inniheldur tvær heiltölur $n$ og $u$ ($1 \le n \le 1000$, $1 \le u \le n$), sem tákna fjölda hnúta og gefna hnútinn, í sömu röð. Síðan hefst samskiptaferlið.

Samskiptareglur

Til að gera fyrirspurn skaltu prenta línu á eftirfarandi sniði:

$$?\ s_1\ s_2$$

þar sem $s_1$ og $s_2$ eru strengir af lengd $n$, sem samanstanda eingöngu af stöfunum 0 og 1. Fyrir hvert $j \in \{1, 2\}$ tilheyrir hnútur $i$ menginu $S_j$ þá og því aðeins að $i$-ti stafurinn í $s_j$ sé 1. Mengin mega vera tóm, mega skarast og mega vera jöfn.

Sem svar við fyrirspurninni færðu einn staf <, =, eða >, sem þýðir að $\operatorname{cut}(S_1)$ er minna en, jafnt og, eða stærra en $\operatorname{cut}(S_2)$, í sömu röð. Þú verður að tryggja að fjöldi fyrirspurna sem þú gerir fari ekki yfir $n + 10$.

Til að tilkynna svarið skaltu prenta línu á eftirfarandi sniði:

$$!\ k\ v_1\ v_2\ \dots\ v_k$$

þar sem $k$ ($0 \le k \le n - 1$) er fjöldi hnúta sem eru aðlægir $u$, og $v_1, v_2, \ldots, v_k$ eru ólík númer þeirra í hvaða röð sem er. Ef $k = 0$ skaltu prenta ! 0. Að tilkynna svarið telst ekki sem fyrirspurn. 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 úttaksbiðminnið (flush). Ef þú gerir ógilda fyrirspurn eða ferð yfir hámarksfjölda fyrirspurna mun samskiptaforritið (interactor) loka inntaksstraumnum og forritið þitt verður að hætta keyrslu.

Í þessu verkefni er samskiptaforritið aðlögunarhæft (adaptive). Þetta þýðir að netið getur breyst eftir fyrirspurnum þínum, svo lengi sem það stangast ekki á við nein fyrri svör. Svarið þitt verður að vera rétt fyrir hvert net sem samræmist öllum svörum sem þú hefur fengið.

Dæmi

Inntak 1

4 1

<

=

<

=

Úttak 1

? 0000 1000

? 0100 1100

? 0010 1010

? 0001 1001

! 2 2 4

Athugasemd

Eitt net sem samræmist samskiptunum í dæminu hefur leggina $(1, 2)$, $(1, 4)$ og $(2, 3)$.

problem_22880_2dcb0fb296e7aa6b2806ae2a9f6861fe.png

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 úr viðhengjunum. Keyrðu tólið með valkostinum -h til að birta notkunarleiðbeiningar. Tólið prófar samskiptin og tilkynnta svarið, en framfylgir hvorki tíma- né minnistakmörkunum.

Prófunartólið notar fast net sem tilgreint er í inntaksskrá þess í gegnum öll samskiptin, á meðan opinbera samskiptaforritið er aðlögunarhæft. Að standast prófanir með prófunartólinu tryggir ekki að lausnin þín sé rétt gegn opinbera samskiptaforritinu.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.