Guest User

Untitled

a guest
Feb 5th, 2022
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.71 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <algorithm>
  3. using namespace std;
  4.  
  5. typedef struct{
  6.     int start;
  7.     int end;
  8. }t_route;
  9.  
  10. int compare(t_route a, t_route b){
  11.     return a.start < b.start;
  12. }
  13.  
  14. t_route A[4000];
  15. int N,M;
  16.  
  17. int main(){
  18.  
  19.     int i,j,x,y,num_t;
  20.     scanf("%d%d",&N,&M);
  21.  
  22.     for(i = 0;i < M;i ++){
  23.         scanf("%d%d",&A[i].start,&A[i].end);
  24.     }
  25.  
  26.     sort(A,A+M,compare);
  27.  
  28.     int dp[M+5] = {0};
  29.     dp[0] = 1;
  30.     int ans = 1;
  31.  
  32.     for(i = 1;i < M; i++){
  33.         for(j = 0; j < i; j++){
  34.             if(A[i].start > A[j].start && A[i].start <= A[j].end){
  35.                 dp[i] = max(dp[i],dp[j]+1);
  36.                 ans = max(ans,dp[i]);
  37.             }
  38.         }
  39.     }
  40.  
  41.     printf("%d",ans);
  42.  
  43.     return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment