原题:
某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。
由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。
解题思路:
创建一个元素全部为1的列表,长度为L+1(即树的棵数)
循环输入每一行的a,b数
用range函数循环以0替代第a个数据到第b个数据的1替换为0
求列表的和t
输出结果
tips:通过此方法可以避免重复删除数据
参考代码:
L,M=map(int,input().strip().split()) long=[] for i in range(0,L+1): long.append(1) for k in range(0,M): a,b=map(int,input().strip().split()) for x in range(a-1,b): long[x]=0 t=sum(long) print(t)
0.0分
7 人评分
简单的a+b (C语言代码)浏览:538 |
C语言考试练习题_保留字母 (C语言代码)浏览:694 |
简单的a+b (C语言代码)浏览:726 |
c primer plus 第十二章 12.1小节浏览:377 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:543 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:946 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:1044 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:711 |
剪刀石头布 (C语言代码)浏览:753 |
简单的a+b (C语言代码)浏览:577 |
陌上竹叶 2023-10-20 09:27:54 |
好好好