結果
| 問題 | No.3627 Share the Median |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-08-14 22:46:29 |
| 言語 | C++23 (gcc 15.2.0 + boost 1.90.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,187 bytes |
| 記録 | |
| コンパイル時間 | 1,969 ms |
| コンパイル使用メモリ | 345,172 KB |
| 実行使用メモリ | 9,548 KB |
| 平均クエリ数 | 780.70 |
| 最終ジャッジ日時 | 2026-08-14 22:46:37 |
| 合計ジャッジ時間 | 6,145 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge2_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| Sample | 0 % | |
| Easy | 20 % | AC * 16 |
| Hard | 80 % | AC * 2 WA * 22 |
| 合計 | 3 * 20% = 60 点 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
void Alice(){
int Q, n, m;
cin >> Q >> n >> m;
vector<pair<int,int>> a(n);
vector<int> b(n + m);
for(int i = 0; i < n; i++){
cin >> a[i].first;
a[i].second = i;
b[i] = a[i].first;
}
int mx = max(n, m), v;
for(int i = 0; i < mx; i++){
cout << "share " << min(n, i + 1) << endl;
if(i < m) cin >> b[i + n];
else cin >> v;
}
sort(b.begin(), b.end());
cout << "answer " << b[(n + m) / 2] << endl;
}
void Bob(){
int Q, n, m;
cin >> Q >> n >> m;
swap(n, m);
vector<pair<int,int>> a(n);
vector<int> b(n + m);
for(int i = 0; i < n; i++){
cin >> a[i].first;
a[i].second = i;
b[i] = a[i].first;
}
int mx = max(n, m), v;
for(int i = 0; i < mx; i++){
cout << "share " << min(n, i + 1) << endl;
if(i < m) cin >> b[i + n];
else cin >> v;
}
sort(b.begin(), b.end());
cout << "answer " << b[(n + m) / 2] << endl;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
string player;
cin >> player;
if(player == "Alice") Alice();
else Bob();
}