解题思路: 将有树的点标记为1,没有树的点标记为0
注意事项: 【马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,**即0,1,2,……,L,都种有一棵树。】说明由L+1棵树
【现在要把这些区域中的树(包括区域端点处的两棵树)移走。】说明要移走 (终止点-起始点+1)棵树
参考代码:
#include<stdio.h> int main() { int L,M,j,i; // L马路的长度;M区域的数目;i,j作循环变量; int start,end,count=0; scanf("%d %d",&L,&M); if((L<1 || L>10000) || (M<1 || M>100)) return 0; int a[L+1]; // 定义一个存储L+1长度的数组 for(i=0;i<=L;i++){ // 初始化数组内每一个元素为1,代表都有种树 a[i] = 1; } for(k=1;k<=M;k++){ scanf("%d %d",&start,&end); for(j=start;j<=end;j++){ // 遍历起始点到终止点;将值标记为0,代表树被移除 a[j] = 0; } } for(i=0;i<=L;i++){ // 再次遍历,计算剩余的树的数目 if(a[i]==1){ count++; } } printf("%d",count); return 0; }
0.0分
0 人评分
C语言训练-阶乘和数* (C++代码)(直接输出样例hhhh)浏览:1158 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:711 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:959 |
WU-输入输出格式练习 (C++代码)浏览:1080 |
WU-输出正反三角形 (C++代码)浏览:1018 |
IP判断 (C语言代码)浏览:763 |
【计算直线的交点数】 (C语言代码)浏览:1449 |
打印十字图 (C语言代码)浏览:2708 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:556 |
矩阵加法 (C语言代码)浏览:1722 |