#include using namespace std; #define ll long long ll dp[1024]; ll l[1024]; vector skipped; vector > leaves; ll inf = 2000000000; int d,n,m; int main () { ios_base::sync_with_stdio(false); // freopen("C:\\in.txt","r", stdin); cin >> d >> n >> m; for(int i=0; i<1024; ++i){ dp[i] = inf; } memset(l, 0, sizeof(l)); for(int i=0; i> x; skipped.push_back(x); l[x] = 1; } for(int i=0; i<=d; ++i){ if(l[i]) break; dp[i] = 0; } while(m--){ int x,y; cin >> x >> y; leaves.push_back(make_pair(x,y)); } sort(leaves.begin(), leaves.end()); for(int i=0; i=0; j--){ curr_min = min(curr_min, dp[j]+1); if(l[j]) break; } dp[e] = curr_min; } ll res = inf; for(int j=d; j>=0; j--){ res = min(res, dp[j]); if(l[j]) break; } cout << res << endl; return 0; }