问题描述
给出一段长度为n的区间和m条线段,每条线段有其起始点xi和终止点yi,现在我们想知道最少用几条线段就可以覆盖这一个区间。
输入格式
第一行包含两个整数n,m
接下来m行 每行两个数 xi yi 保证 xi<=yi
输出格式
输出1行,包含一个整数,表示最少线段数。如果无法覆盖 输出-1;
样例输入
5 3
1 3
3 4
4 5
样例输出
3
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T=sc.nextInt(); int n=sc.nextInt(); Job[]jobs=new Job[n]; for(int i=0;i1){ break; } if(s<=start){ end=Math.max(t,end); }else{ ans++; start=end+1; if(s<=start){ end=Math.max(t,end); }else{ break; } } if(end>=T){ break; } } if(end { int s; int t; public Job(int s,int t){ this.s=s; this.t=t; } @Override public int compareTo(Job o) { int x=this.s-o.s; if(x==0){ return this.t-o.t; } else { return x; } } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)