Universal Cup Judging System

Universal Cup

Time Limit: 2.0 s Memory Limit: 1024 MB Total points: 100 Interactive
Statistics

呢題係一道交互題。

KUPC 君寫咗一個解決以下問題嘅程式。

俾你一棵有 $N$ 個頂點嘅樹 $T = (V, E)$。 對於 $T$ 入面一個長度為 $k$ 嘅頂點序列 $\{a_1, \dots, a_k\}$,定義佢嘅分數如下。 - 設 $d(u, v)$ 係樹 $T$ 入面頂點 $u$ 同 $v$ 之間路徑上面嘅邊數。咁分數就係 $\prod_{i=1}^k d(a_i, a_{(i \bmod k)+1})$。

俾出 $V$ 嘅一個子集 $S$。對於每個 $1 \le k \le N$,求出以下嘅值 $q_k$。 - 所有元素都屬於 $S$ 而且長度為 $k$ 嘅頂點序列 $\{a_1, \dots, a_k\}$ 嘅分數總和,對 $2^{61} - 1$ 取模。

KUPC 君預先秘密保存咗樹 $T$ 嘅資訊,並且持續將 $T$ 作為輸入俾個程式用。

你想用上面嘅程式去還原樹入面所有葉節點嘅資訊。設樹嘅頂點數為 $N$,你最多可以提出以下問題 $N$ 次。

  • 揀 $V$ 嘅一個子集 $S$,並詢問個程式嘅輸出。

假設 KUPC 君嘅程式係正確嘅,請根據透過提問獲得嘅資訊,搵出樹 $T$ 入面包含嘅所有葉節點。

評測機唔係自適應(non-adaptive)嘅,即係樹 $T$ 喺交互開始之前已經固定咗。

交互格式

首先,由標準輸入俾出 $N$。($2 \le N \le 50$)

對於每次提問,請按以下格式向標準輸出打印:

? s1s2...sN

呢度,$s_1s_2\cdots s_N$ 係一個長度為 $N$ 嘅字串,代表子集 $S$,其中如果 $i \in S$ 則 $s_i = 1$,如果 $i \notin S$ 則 $s_i = 0$。

作為回應,標準輸入會俾出以下內容:

q1 q2 ... qN

當你確定晒所有葉節點之後,請按以下格式輸出你嘅答案:

! t1t2...tN

呢度,$t_1t_2\cdots t_N$ 係一個長度為 $N$ 嘅字串,其中如果 $i$ 係葉節點則 $t_i = 1$,如果唔係葉節點則 $t_i = 0$。

輸出完呢個答案之後,請立即終止你嘅程式。

每次輸出任何內容之後,請喺最後加上換行符並刷新(flush)標準輸出。

範例

範例輸入 1

5

0 8 0 32 0

0 44 108 968 3960

0 0 0 0 0

0 76 348 3336 22200

範例輸出 1

? 00101

? 11001

? 10000

? 11111

! 11001

說明

對於第一個範例,評測機秘密保存嘅樹嘅邊集係 $(1, 3), (2, 3), (3, 4), (4, 5)$。

喺第一次提問入面,$S = \{3, 5\}$。

注意 $d(3, 3) = 0, d(3, 5) = d(5, 3) = 2, d(5, 5) = 0$。

例如,有以下 $4$ 個元素屬於 $S$ 而且長度為 $2$ 嘅頂點序列 $a$。

  • 如果 $a = (3, 3)$,咁呢個序列嘅分數係 $d(3, 3) \times d(3, 3) = 0 \times 0 = 0$。
  • 如果 $a = (3, 5)$,咁呢個序列嘅分數係 $d(3, 5) \times d(5, 3) = 2 \times 2 = 4$。
  • 如果 $a = (5, 3)$,咁呢個序列嘅分數係 $d(5, 3) \times d(3, 5) = 2 \times 2 = 4$。
  • 如果 $a = (5, 5)$,咁呢個序列嘅分數係 $d(5, 5) \times d(5, 5) = 0 \times 0 = 0$。

評測機對 $q_2$ 嘅回應係 $8$,即係 $0 + 4 + 4 + 0$ 除以 $2^{61} - 1$ 嘅餘數。

對其他序列長度進行類似計算,我哋就得到評測機嘅回應 0 8 0 32 0。

呢棵樹嘅葉節點係頂點 $1, 2, 5$,輸出 ! 11001 就可以正確完成對葉節點嘅識別。

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#1529EditorialOpen题解jianglyView

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.