結果
問題 | No.2803 Bocching Star |
ユーザー |
![]() |
提出日時 | 2024-07-19 22:15:24 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 337 ms / 2,000 ms |
コード長 | 750 bytes |
コンパイル時間 | 1,181 ms |
コンパイル使用メモリ | 91,252 KB |
最終ジャッジ日時 | 2025-02-23 16:38:31 |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 |
ソースコード
#include<iostream>#include<vector>#include<algorithm>#include<map>using namespace std;int main(){int n,s;cin >> n >> s;if(n==1){cout << 1 << endl;cout << 1 << endl;return 0;}vector<int>a(n);for(int i=0;i<n;i++)cin >> a[i];vector<int>b=a;sort(a.begin(),a.end());vector<bool>ans(n,false);if(a[1]-a[0]<=s)ans[0]=true;if(a[n-1]-a[n-2]<=s)ans[n-1]=true;for(int i=1;i<n-1;i++)if(a[i]-a[i-1]<=s || a[i+1]-a[i]<=s)ans[i]=true;map<int,bool>dict;for(int i=0;i<n;i++){if(ans[i])dict[a[i]]=true;else dict[a[i]]=false;}int cnt=0;for(int i=0;i<n;i++)if(dict[b[i]]==false)cnt++;cout << cnt << endl;for(int i=0;i<n;i++)if(dict[b[i]]==false)cout << i+1 << " ";cout << endl;}