此题理解题意即可AC,求的是一个集合的最大大小,这个集合中任意两条与X轴垂直的直线都可已用水平线链接。
#include<stdio.h> #include<string.h> int num[10008]; int main(){ int t,n,i,j; scanf("%d",&t); while(t--){ scanf("%d",&n); int x,y1,y2; memset(num,0,sizeof(num)); for(i=0;i<n;i++){ scanf("%d%d%d",&x,&y1,&y2); for(j=y1;j<=y2;j++){ num[j]++; } } int maxn=0; for(i=1;i<=10000;i++){ if(maxn<num[i]){ maxn=num[i]; } } printf("%d/n",maxn); } return 0; }