提出 #9182244
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MX = 100005;
int a[MX];
int n, m, v, p;
bool can(int x)
{
ll rem = (v - 1) * 1LL * m;
int cc = p - 1;
for (int j = 1; j <= n; j++) {
if (j == x) continue;
if (cc) {
rem -= m;
cc--;
}
else {
rem -= min(m, a[x] + m - a[j]);
if (a[x] + m < a[j]) return false;
}
}
return rem <= 0;
}
int main()
{
ignore = scanf("%d %d %d %d", &n, &m, &v, &p);
for (int i = 1; i <= n; i++) {
ignore = scanf("%d", a + i);
}
sort(a + 1, a + n + 1);
reverse(a + 1, a + n + 1);
int L = 1, R = n;
int ans = 0;
while (L <= R) {
int M = (L + R) / 2;
if (can(M)) {
ans = M;
L = M + 1;
}
else {
R = M - 1;
}
}
printf("%d\n", ans);
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | B - Voting Judges |
| ユーザ | kristapuciitis |
| 言語 | C++14 (GCC 5.4.1) |
| 得点 | 700 |
| コード長 | 809 Byte |
| 結果 | AC |
| 実行時間 | 21 ms |
| メモリ | 640 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 700 / 700 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt |
| All | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt, 01-47.txt, 01-48.txt, 01-49.txt, 01-50.txt, 01-51.txt, 01-52.txt, 01-53.txt, 01-54.txt, 01-55.txt, 01-56.txt, 01-57.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00-sample-01.txt | AC | 1 ms | 256 KiB |
| 00-sample-02.txt | AC | 1 ms | 256 KiB |
| 00-sample-03.txt | AC | 1 ms | 256 KiB |
| 01-01.txt | AC | 1 ms | 256 KiB |
| 01-02.txt | AC | 1 ms | 256 KiB |
| 01-03.txt | AC | 1 ms | 256 KiB |
| 01-04.txt | AC | 1 ms | 256 KiB |
| 01-05.txt | AC | 1 ms | 256 KiB |
| 01-06.txt | AC | 1 ms | 256 KiB |
| 01-07.txt | AC | 1 ms | 256 KiB |
| 01-08.txt | AC | 13 ms | 512 KiB |
| 01-09.txt | AC | 17 ms | 512 KiB |
| 01-10.txt | AC | 2 ms | 256 KiB |
| 01-11.txt | AC | 3 ms | 256 KiB |
| 01-12.txt | AC | 17 ms | 512 KiB |
| 01-13.txt | AC | 12 ms | 512 KiB |
| 01-14.txt | AC | 8 ms | 384 KiB |
| 01-15.txt | AC | 10 ms | 384 KiB |
| 01-16.txt | AC | 17 ms | 640 KiB |
| 01-17.txt | AC | 6 ms | 384 KiB |
| 01-18.txt | AC | 4 ms | 256 KiB |
| 01-19.txt | AC | 20 ms | 640 KiB |
| 01-20.txt | AC | 13 ms | 512 KiB |
| 01-21.txt | AC | 20 ms | 640 KiB |
| 01-22.txt | AC | 21 ms | 640 KiB |
| 01-23.txt | AC | 20 ms | 640 KiB |
| 01-24.txt | AC | 20 ms | 640 KiB |
| 01-25.txt | AC | 20 ms | 640 KiB |
| 01-26.txt | AC | 20 ms | 640 KiB |
| 01-27.txt | AC | 20 ms | 640 KiB |
| 01-28.txt | AC | 20 ms | 640 KiB |
| 01-29.txt | AC | 20 ms | 640 KiB |
| 01-30.txt | AC | 20 ms | 640 KiB |
| 01-31.txt | AC | 13 ms | 640 KiB |
| 01-32.txt | AC | 14 ms | 640 KiB |
| 01-33.txt | AC | 17 ms | 640 KiB |
| 01-34.txt | AC | 19 ms | 640 KiB |
| 01-35.txt | AC | 19 ms | 640 KiB |
| 01-36.txt | AC | 15 ms | 640 KiB |
| 01-37.txt | AC | 20 ms | 640 KiB |
| 01-38.txt | AC | 16 ms | 640 KiB |
| 01-39.txt | AC | 16 ms | 640 KiB |
| 01-40.txt | AC | 16 ms | 640 KiB |
| 01-41.txt | AC | 16 ms | 640 KiB |
| 01-42.txt | AC | 16 ms | 640 KiB |
| 01-43.txt | AC | 16 ms | 640 KiB |
| 01-44.txt | AC | 16 ms | 640 KiB |
| 01-45.txt | AC | 16 ms | 640 KiB |
| 01-46.txt | AC | 16 ms | 640 KiB |
| 01-47.txt | AC | 16 ms | 640 KiB |
| 01-48.txt | AC | 16 ms | 640 KiB |
| 01-49.txt | AC | 16 ms | 640 KiB |
| 01-50.txt | AC | 16 ms | 640 KiB |
| 01-51.txt | AC | 16 ms | 640 KiB |
| 01-52.txt | AC | 15 ms | 640 KiB |
| 01-53.txt | AC | 14 ms | 640 KiB |
| 01-54.txt | AC | 19 ms | 640 KiB |
| 01-55.txt | AC | 20 ms | 640 KiB |
| 01-56.txt | AC | 21 ms | 640 KiB |
| 01-57.txt | AC | 20 ms | 640 KiB |