結果
問題 | No.2803 Bocching Star |
ユーザー |
![]() |
提出日時 | 2024-07-30 05:01:54 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 115 ms / 2,000 ms |
コード長 | 773 bytes |
コンパイル時間 | 2,045 ms |
コンパイル使用メモリ | 176,664 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-30 05:02:01 |
合計ジャッジ時間 | 6,747 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 |
ソースコード
#include <bits/stdc++.h>using namespace std;int main() {int N, S; cin >> N >> S;bool F = false;vector<bool> B(N, true);vector<pair<int, int>> P(N);for (int i = 0; i < N; i++) {cin >> P.at(i).first;P.at(i).second = i;}sort(P.begin(), P.end());for (int i = 1; i < N - 1; i++) {if (P.at(i).first - P.at(i - 1).first <= S) {B.at(P.at(i - 1).second) = false;B.at(P.at(i).second) = false;}if (P.at(i + 1).first - P.at(i).first <= S) {B.at(P.at(i).second) = false;B.at(P.at(i + 1).second) = false;}}cout << count(B.begin(), B.end(), true) << endl;for (int i = 0; i < N; i++) {if (B.at(i)) {if (F) cout << ' ';cout << i + 1;F = true;}}cout << endl;}