結果
| 問題 | No.3632 IQR |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-08-25 22:50:05 |
| 言語 | C++23(gcc16) (gcc 16.1.0 + boost 1.92.0) |
| 結果 |
AC
|
| 実行時間 | 132 ms / 2,000 ms |
| + 603µs | |
| コード長 | 630 bytes |
| 記録 | |
| コンパイル時間 | 1,843 ms |
| コンパイル使用メモリ | 185,444 KB |
| 実行使用メモリ | 9,972 KB |
| 最終ジャッジ日時 | 2026-08-25 22:50:14 |
| 合計ジャッジ時間 | 7,520 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge3_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 63 |
ソースコード
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
using ll = long long;
ll mid(vector<ll>& a){
int n=a.size();
if(n&1) return a[n/2];
else return (a[n/2-1]+a[n/2])/2;
}
int main(void){
int n; cin >> n;
vector<ll> a(n), pre, aft;
for(auto&x:a) cin >> x, x*=2;
sort(begin(a), end(a));
pre.insert(end(pre), begin(a), begin(a)+n/2);
aft.insert(end(aft), end(a)-n/2, end(a));
ll q1=mid(pre), q2=mid(a), q3=mid(aft), I=q3-q1;
int u=0;
for(auto x:a) u+=((x*2<q1*2-I*3)||(q3*2+I*3<x*2));
printf("%.1f %.1f %.1f %d\n", (double)q1/2.0, (double)q2/2.0, (double)q3/2.0, u);
return 0;
}