結果
問題 |
No.2803 Bocching Star
|
ユーザー |
|
提出日時 | 2024-07-12 21:58:19 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 161 ms / 2,000 ms |
コード長 | 1,342 bytes |
コンパイル時間 | 2,014 ms |
コンパイル使用メモリ | 177,012 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-12 21:58:56 |
合計ジャッジ時間 | 7,265 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 |
ソースコード
#include <bits/stdc++.h> using namespace std; using ll=long long; using Graph = vector<vector<int>>; #define yes (cout<<"Yes"<<endl) #define no (cout<<"No"<<endl) #define Endl endl #define vi vector<int> #define vl vector<ll> #define vs vector<string> #define vb vector<bool> #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define Sort(v) sort(v.begin(),v.end()); #define rev(v) reverse(v.begin(),v.end()); #define uniq(v) v.erase( unique(v.begin(), v.end()), v.end() ); ll INF=9223372036800000000; int inf=200000000; ll mod=998244353; ll mod2=1000000007; int dx[8]={-1,-1,-1,0,0,1,1,1}; int dy[8]={-1,0,1,-1,1,-1,0,1}; int dtt[4]={1,3,4,6};//dx,dyを4方向にする ll two_billion=2000000000000; int ohm=100000000; string alpha="abcdefghijklmnopqrstuvwxyz"; int main(){ int n;cin>>n; int k;cin>>k; vector<int> p(n); set<int> s; rep(i,n){ cin>>p[i]; } vector<int> b=p; Sort(b); vector<int> ans; for(int i=0;i<n;i++){ int l=max(0,p[i]-k),r=p[i]+k; int p=lower_bound(b.begin(),b.end(),l)-b.begin(); int q=upper_bound(b.begin(),b.end(),r)-b.begin(); q--; if(p-q==0){ ans.push_back(i+1); } //cout<<p<<' '<<q<<' '<<q-p<<endl; } cout<<ans.size()<<endl; for(int i:ans){ cout<<i<<' '; }cout<<endl; }