Detta är ett interaktivt problem.
KUPC-kun skrev ett program som löser följande problem.
Du får ett träd $T = (V, E)$ med $N$ hörn. För en följd $\{a_1, \dots, a_k\}$ av hörn i $T$ av längd $k$, definiera dess poäng enligt följande. - Låt $d(u, v)$ vara antalet kanter på vägen mellan hörnen $u$ och $v$ i $T$. Då är poängen $\prod_{i=1}^k d(a_i, a_{(i \bmod k)+1})$.
En delmängd $S$ av $V$ ges. För varje $1 \le k \le N$, bestäm följande värde $q_k$. - Summan av poängen över alla hörnföljder $\{a_1, \dots, a_k\}$ av längd $k$ vars element tillhör $S$, tagen modulo $2^{61} - 1$.
KUPC-kun håller informationen om trädet $T$ hemlig i förväg och fortsätter att använda $T$ som det träd som ges till programmet.
Du försöker återskapa informationen om löven med hjälp av programmet ovan. Om antalet hörn i trädet är $N$ får du ställa följande fråga högst $N$ gånger.
- Välj en delmängd $S$ av $V$ och fråga efter programmets utdata.
Under antagandet att KUPC-kuns program är korrekt, identifiera alla löv i trädet $T$ utifrån informationen som erhållits genom frågorna.
Domaren är icke-adaptiv, och trädet $T$ är fastställt innan interaktionen börjar.
Interaktionsprotokoll
Först ges $N$ från standardindata. ($2 \le N \le 50$)
För varje fråga ska du skriva ut till standardutdata i följande format.
? s1s2...sN
Här är $s_1s_2\cdots s_N$ en sträng av längd $N$ som representerar delmängden $S$, där $s_i = 1$ om $i \in S$, och $s_i = 0$ om $i \notin S$.
Som svar ges följande från standardindata.
q1 q2 ... qN
När du har identifierat alla löv, skriv ut ditt svar i följande format.
! t1t2...tN
Här är $t_1t_2\cdots t_N$ en sträng av längd $N$, där $t_i = 1$ om $i$ är ett löv, och $t_i = 0$ om det inte är ett löv.
Avsluta ditt program omedelbart efter denna utskrift.
Varje gång du skriver ut något, lägg till en radbrytning på slutet och töm (flush) standardutdata.
Exempel
Exempelindata 1
5 0 8 0 32 0 0 44 108 968 3960 0 0 0 0 0 0 76 348 3336 22200
Exempelutdata 1
? 00101 ? 11001 ? 10000 ? 11111 ! 11001
Förklaring
För det första exemplet är kantmängden för trädet som domaren håller hemligt $(1, 3), (2, 3), (3, 4), (4, 5)$.
I den första frågan är $S = \{3, 5\}$.
Notera att $d(3, 3) = 0, d(3, 5) = d(5, 3) = 2, d(5, 5) = 0$.
Till exempel finns följande $4$ hörnföljder $a$ av längd $2$ vars element tillhör $S$.
- Om $a = (3, 3)$ är poängen för denna följd $d(3, 3) \times d(3, 3) = 0 \times 0 = 0$.
- Om $a = (3, 5)$ är poängen för denna följd $d(3, 5) \times d(5, 3) = 2 \times 2 = 4$.
- Om $a = (5, 3)$ är poängen för denna följd $d(5, 3) \times d(3, 5) = 2 \times 2 = 4$.
- Om $a = (5, 5)$ är poängen för denna följd $d(5, 5) \times d(5, 5) = 0 \times 0 = 0$.
Domaren svarar med $8$ för $q_2$, vilket är resten när $0 + 4 + 4 + 0$ divideras med $2^{61} - 1$.
Genom att räkna på motsvarande sätt för de andra följdlängderna får vi domarens svar 0 8 0 32 0.
Löven i detta träd är hörnen $1, 2, 5$, och att skriva ut ! 11001 slutför identifieringen av löven korrekt.