제출 #999572

#제출 시각아이디문제언어결과실행 시간메모리
999572vjudge1Rabbit Carrot (LMIO19_triusis)C++17
0 / 100
1 ms348 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define inf (int)1e15 int binsearch(int val, vector<int>& vec){ int l = 0, r = (int)vec.size()-1, mid; while(l < r){ mid = (l + r + 1)/2; if(vec[mid] <= val){ l = mid; }else{ r = mid-1; } } if(l != (int)vec.size() - 1){ l++; } return l; } void solve(){ int n, m; cin >> n >> m; vector<int> vals(n); for(int i = 0; i < n; i++){ cin >> vals[i]; vals[i] -= (m * i); } reverse(vals.begin(), vals.end()); vector<int> v; //v sorted in increasing size for(int i = 0; i < n; i++){ if((int)v.size() == 0){ v.push_back(vals[i]); continue; } int ind = binsearch(vals[i], v); if(v[ind] <= vals[i]){ v.push_back(vals[i]); }else{ v[ind] = vals[i]; } //cout << i << ", " << ind << "\n"; } if(v[0] > m){ cout << n << "\n"; return; } cout << n - (int)v.size() << "\n"; } signed main(){ ios::sync_with_stdio(false), cin.tie(0); //freopen("txt.in", "r", stdin); freopen("txt.out", "w", stdout); //int t; cin >> t; while(t--) solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...