Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<cstdio>
- #include<vector>
- #include<algorithm>
- using namespace std;
- vector<int> v;
- int m, n, r;
- int t[100007];
- bool czy(int ile) {
- v.push_back(0);
- for(int i= 0; i < ile; i++) v.push_back(t[i]);
- v.push_back(n);
- sort(v.begin(), v.end());
- bool res = 1;
- for(int i = 1; i < v.size(); i++) {
- if(v[i]-v[i-1]>r) res = 0;
- }
- v.clear();
- return res;
- }
- int main() {
- scanf("%d%d%d", &n, &m, &r);
- for(int i = 0; i < m; i++) scanf("%d", &t[i]);
- int p = 0, k = m+1;
- while(p<k) {
- int sr = (p+k)/2;
- if(czy(sr)) k = sr;
- else p = sr+1;
- }
- if(p==m+1) printf("NIE\n");
- else printf("%d\n", p);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement