結果

問題 No.2124 Guess the Permutation
ユーザー ⁣
提出日時 2024-07-11 23:54:19
言語 Rust
(1.77.0 + proconio)
結果
AC  
実行時間 53 ms / 2,000 ms
コード長 480 bytes
コンパイル時間 14,913 ms
コンパイル使用メモリ 378,796 KB
実行使用メモリ 25,220 KB
平均クエリ数 374.60
最終ジャッジ日時 2024-07-11 23:54:47
合計ジャッジ時間 17,109 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 33 ms
24,836 KB
testcase_01 AC 23 ms
25,220 KB
testcase_02 AC 22 ms
24,580 KB
testcase_03 AC 23 ms
24,680 KB
testcase_04 AC 24 ms
24,452 KB
testcase_05 AC 26 ms
24,836 KB
testcase_06 AC 40 ms
24,836 KB
testcase_07 AC 51 ms
24,452 KB
testcase_08 AC 52 ms
24,964 KB
testcase_09 AC 53 ms
24,964 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

fn g() -> usize {
	let mut s = String::new();
	std::io::stdin().read_line(&mut s).ok();
	s.trim().parse().unwrap()
}

fn main() {
	let n = g();
	let mut t = n * (n + 1) / 2;
	let mut a = vec![0; n];
	println!("? 1 {}", n - 1);
	let mut s = g();
	a[n - 1] = t - s;
	for i in 2..n {
		println!("? {} {n}", i);
		s = g();
		(t, a[i - 2]) = (s, t - s);
	}
	a[n - 2] = t - a[n - 1];
	println!(
		"! {}",
		a.iter()
			.map(|x| x.to_string())
			.collect::<Vec<_>>()
			.join(" ")
	)
}
0