提出 #35286409
ソースコード 拡げる
#include"bits/stdc++.h"
using namespace std;
bool check(vector<int>& a, int x) {
// cout << x << endl;
vector<int> b(x+1, 0);
int t = 0;
for (int i = 0; i < a.size(); ++i) {
if (a[i] <= x && b[a[i]] == 0) b[a[i]] = 1, t++;
}
return (a.size()-t)/2 + t >= x;
}
int main() {
// freopen("C.in" , "r" , stdin);
// freopen("C.out" , "w" , stdout);
int n;
cin >> n;
vector<int> a(n);
for (int i = 0; i < n; ++i) cin >> a[i];
sort(a.begin(), a.end());
int l = 0, r = n;
while (l < r) {
int mid = (l + r + 1) >> 1;
if (check(a, mid)) {
l = mid;
} else {
r = mid - 1;
}
}
cout << l << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Manga |
| ユーザ | ZzZZCHS |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 300 |
| コード長 | 768 Byte |
| 結果 | AC |
| 実行時間 | 118 ms |
| メモリ | 5520 KiB |
コンパイルエラー
./Main.cpp: In function ‘bool check(std::vector<int>&, int)’:
./Main.cpp:9:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
9 | for (int i = 0; i < a.size(); ++i) {
| ~~^~~~~~~~~~
./Main.cpp:12:31: warning: comparison of integer expressions of different signedness: ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
12 | return (a.size()-t)/2 + t >= x;
| ~~~~~~~~~~~~~~~~~~~^~~~
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 300 / 300 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_one_00.txt, 01_one_01.txt, 01_one_02.txt, 02_srnd_00.txt, 02_srnd_01.txt, 02_srnd_02.txt, 02_srnd_03.txt, 02_srnd_04.txt, 02_srnd_05.txt, 02_srnd_06.txt, 03_rnd_00.txt, 03_rnd_01.txt, 03_rnd_02.txt, 03_rnd_03.txt, 04_max_00.txt, 04_max_01.txt, 04_max_02.txt, 05_same_00.txt, 05_same_01.txt, 05_same_02.txt, 05_same_03.txt, 05_same_04.txt, 05_same_05.txt, 06_concat_00.txt, 06_concat_01.txt, 06_concat_02.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 6 ms | 3412 KiB |
| 00_sample_01.txt | AC | 3 ms | 3480 KiB |
| 00_sample_02.txt | AC | 2 ms | 3460 KiB |
| 01_one_00.txt | AC | 4 ms | 3416 KiB |
| 01_one_01.txt | AC | 2 ms | 3440 KiB |
| 01_one_02.txt | AC | 3 ms | 3556 KiB |
| 02_srnd_00.txt | AC | 2 ms | 3572 KiB |
| 02_srnd_01.txt | AC | 2 ms | 3524 KiB |
| 02_srnd_02.txt | AC | 3 ms | 3560 KiB |
| 02_srnd_03.txt | AC | 3 ms | 3480 KiB |
| 02_srnd_04.txt | AC | 2 ms | 3440 KiB |
| 02_srnd_05.txt | AC | 2 ms | 3368 KiB |
| 02_srnd_06.txt | AC | 3 ms | 3468 KiB |
| 03_rnd_00.txt | AC | 115 ms | 5260 KiB |
| 03_rnd_01.txt | AC | 118 ms | 5344 KiB |
| 03_rnd_02.txt | AC | 114 ms | 5136 KiB |
| 03_rnd_03.txt | AC | 115 ms | 5176 KiB |
| 04_max_00.txt | AC | 91 ms | 5328 KiB |
| 04_max_01.txt | AC | 90 ms | 5520 KiB |
| 04_max_02.txt | AC | 109 ms | 5336 KiB |
| 05_same_00.txt | AC | 92 ms | 5252 KiB |
| 05_same_01.txt | AC | 88 ms | 5088 KiB |
| 05_same_02.txt | AC | 88 ms | 5068 KiB |
| 05_same_03.txt | AC | 89 ms | 5276 KiB |
| 05_same_04.txt | AC | 89 ms | 5344 KiB |
| 05_same_05.txt | AC | 88 ms | 4932 KiB |
| 06_concat_00.txt | AC | 95 ms | 5344 KiB |
| 06_concat_01.txt | AC | 94 ms | 5276 KiB |
| 06_concat_02.txt | AC | 86 ms | 5268 KiB |