General
 
 
# Author Problem Lang Verdict Time Memory Sent Judged  
85514408 Practice:
AbhishekAg
607A - 32 C++17 (GCC 9-64) Wrong answer on test 11 61 ms 8468 KB 2020-06-30 09:55:31 2020-06-30 09:55:31
→ Source
#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define mp make_pair
#define clr clear()
#define ins insert
#define tol(s) transform(s.begin(),s.end(),s.begin(),::tolower);
#define tou(s) transform(s.begin(),s.end(),s.begin(),::toupper);
#define rep(i,n) for(__typeof(n) i=0; i<(n); i++)
#define mem(x,val) memset((x),(val),sizeof(x));
#define cusmem(x,val) for(auto &i:x) i=val;
#define all(x) x.begin(),x.end()
#define fastio ios_base::sync_with_stdio(false);\
            cin.tie(NULL);\
            cout.tie(NULL);
using namespace std;
typedef pair<int,int> pii;
typedef pair<ll,ll>pll;
typedef vector<ll> vl;
typedef vector<pll> vpll;
typedef vector<int> vi;
typedef vector<bool> vb;
typedef vector<pii> vpii;
string imp="Impossible\n";

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
clock_t startTime;
double getCurrentTime() {
    return (double)(clock() - startTime) / CLOCKS_PER_SEC;
}
// const int N=11;
const int N=5e6+5;
ll MOD=1e9+7;
ll n,m,k,i,j;
bool f0,f1,f2;
const int MAXN=2e3;

int main(){
    #ifndef ONLINE_JUDGE
            freopen("input.txt","r",stdin); 
            freopen("output.txt","w",stdout);
    #endif
    fastio
    int tests=1;    
    // cin>>tests;
    while(tests--){
        ll n;   cin>>n;
        int a[n],b[n],dp[n],ans=0;
        mem(dp,0);
        vector<pii>noline,ord;
        for(int i=0;i<n;i++){
            cin>>a[i]>>b[i];
            ord.pb({a[i],i});
        }
        sort(all(ord));
        for(int i=0;i<n;i++){
            int ordin=ord[i].se;
            int oa=a[ordin];
            int ob=b[ordin];
            int ind=lower_bound(noline.begin(),noline.end(),mp(oa-ob,-1))-noline.begin();
            if(ind==0){
                dp[i]=1;
            }
            else{
                ind--;
                dp[i]=dp[noline[ind].se]+1;
            }
            noline.pb({oa,i});
            if(i>0)
            dp[i]=max(dp[i],dp[i-1]);
        }
        cout<<n-dp[n-1]<<"\n";
    }
    return 0;
}



 
?
Time: ? ms, memory: ? KB
Verdict: ?
Input
?
Participant's output
?
Jury's answer
?
Checker comment
?
Diagnostics
?
Click to see test details