http://acm.hdu.edu.cn/showproblem.php?pid=1556
直接用了技巧来做。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int a[100005],n; int main() { while(scanf("%d",&n) && n) { memset(a,0,sizeof(a)); int l,r; for(int i = 1;i <= n;i++) { scanf("%d%d",&l,&r); a[l]++; a[r+1]--; } int sum = 0; int flag = 1; for(int i = 1;i <= n;i++) { sum += a[i]; if(flag) { printf("%d",sum); flag = 0; } else printf(" %d",sum); } printf(" "); } return 0; }