#include <bits/stdc++.h>
using namespace std;
int pos[100010], power[1000010];
int aux[100010];
int d[100010];
int main(){
int n; scanf("%d", &n);
for(int i = 0;i < n;i++){
int a,b; scanf("%d %d", &a, &b);
pos[i] = a;
//power[pos[i]] = b;
power[a] = b;
}
sort(pos, pos + n);
aux[0] = 0;
for(int i = 1;i < n;i++){
int id = lower_bound(pos,pos + n, pos[i] - power[pos[i]]) - pos;
aux[i] = i - id;
}
for(int i = 1;i < n;i++){
int id = lower_bound(pos, pos + n, pos[i] - power[pos[i]]) - pos;
d[i] = d[id - 1] + aux[i];
}
int resp = 100010;
for(int i = 0;i < n;i++){
resp = min(resp, (d[i] + n - i - 1) );
}
printf("%d", resp);
}
27A - Next Test | 785. Is Graph Bipartite |
90. Subsets II | 1560A - Dislike of Threes |
36. Valid Sudoku | 557. Reverse Words in a String III |
566. Reshape the Matrix | 167. Two Sum II - Input array is sorted |
387. First Unique Character in a String | 383. Ransom Note |
242. Valid Anagram | 141. Linked List Cycle |
21. Merge Two Sorted Lists | 203. Remove Linked List Elements |
733. Flood Fill | 206. Reverse Linked List |
83. Remove Duplicates from Sorted List | 116. Populating Next Right Pointers in Each Node |
145. Binary Tree Postorder Traversal | 94. Binary Tree Inorder Traversal |
101. Symmetric Tree | 77. Combinations |
46. Permutations | 226. Invert Binary Tree |
112. Path Sum | 1556A - A Variety of Operations |
136. Single Number | 169. Majority Element |
119. Pascal's Triangle II | 409. Longest Palindrome |