No.2496 LCM between Permutations
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / リアクティブ問題 (詳しくはこちら)
タグ : / 解いたユーザー数 53
作問者 : KumaTachiRen / テスター : 👑 p-adic
タグ : / 解いたユーザー数 53
作問者 : KumaTachiRen / テスター : 👑 p-adic
問題文最終更新日: 2023-09-11 11:52:42
問題文
この問題はインタラクティブ問題です.
正整数 $N$ が与えられます.また,$(1,2,\dots,N)$ の順列 $A=(A_1,A_2,\dots,A_N),B=(B_1,B_2,\dots,B_N)$ が隠されています. あなたは次の質問を $3N$ 回まで行うことができます.
- 質問:$1$ 以上 $N$ 以下の整数 $i,j$ を選び,$\mathrm{lcm}(A_i,B_j)$ の値を尋ねる.
制約
- $1\leq N\leq 1000$
- 順列 $A,B$ はテストケース毎に固定である.
- 入力はすべて整数
入出力
最初に,標準入力から順列の長さ $N$ が与えられます.
$N$
次に,$A,B$ を特定できるまで質問を繰り返してください.質問は次の形式で標準出力に出力してください.
? $i$ $j$
質問に対する答えは,標準入力から次の形式で与えられます.
$X$
ここで $X=\mathrm{lcm}(A_i,B_j)$ です.
$A,B$ が特定できたら,それを以下の形式で標準出力に出力してください(1行で出力してください).その後,ただちにプログラムを終了してください.
! $A_1$ $A_2$ $\dots$ $A_N$ $B_1$ $B_2$ $\dots$ $B_N$
注意点
- 出力のたびに,末尾に改行を入れた上で標準出力を flush してください.しなかった場合 TLE となる可能性があります.
- $3N$ 回を超えて質問をしたり,不正な出力を行った場合のジャッジ結果は不定です.
- 解答を出力したらただちにプログラムを終了してください.そうしなかった場合のジャッジ結果は不定です.
サンプル
$N=3,A=(1,2,3),B=(3,1,2)$ の場合の入出力例です.入力 | 出力 | 説明 |
---|---|---|
3 |
はじめに $N$ が与えられます. | |
? 1 2 |
$i=1,j=2$ として質問をします. | |
1 |
$\mathrm{lcm}(A_1,B_2)=1$ です. | |
? 3 2 |
$i=3,j=2$ として質問をします. | |
3 |
$\mathrm{lcm}(A_3,B_2)=3$ です. | |
? 3 3 |
$i=3,j=3$ として質問をします. | |
6 |
$\mathrm{lcm}(A_3,B_3)=6$ です. | |
! 1 2 3 3 1 2 |
$A=(1,2,3),B=(3,1,2)$ と特定できたので,それを解答します. |
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。