题目:
N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a <= b),lele便为骑上他的“小飞鸽"牌电动车从气球a开始到气球b依次给每个气球涂一次颜色。但是N次以后lele已经忘记了第I个气球已经涂过几次颜色了,你能帮他算出每个气球被涂过几次颜色吗?
代码:
1 #include<stdio.h> 2 #include<string.h> 3 #define maxn 110000 4 5 int aa[maxn]; 6 7 int main() 8 { 9 int t; 10 11 while(scanf("%d", &t), t) 12 { 13 int a, b, i; 14 memset(aa, 0, sizeof(aa)); 15 16 for(i=1; i<=t; i++) 17 { 18 scanf("%d%d", &a, &b); 19 aa[a]++; 20 aa[b+1]--; 21 } 22 23 printf("%d", aa[1]); 24 25 int sum = aa[1]; 26 for(i=2; i<=t; i++) 27 { 28 sum += aa[i]; 29 printf(" %d", sum); 30 } 31 printf(" "); 32 } 33 return 0; 34 }