这个是入门级的算法,菜鸟教程。
题目描述:
输入一个列表 arr,返回元素值是元素下标的倍数的元素个数。
列表的下标从 0 开始。
例子:
输入
[4,5,6,7]
输出
2
解释:5 是 1 的倍数,6 是 2 的倍数。
样例二
输入
[0,0,0]
输出
3
这里为什么结果是3,题目给出的解释是0是任意数的倍数,按这个说法,0也是0的倍数啦。
弄清楚这点,就好办了。
下面是我的解决方案:
arr = eval(input()) num=0 for i in range(len(arr)): if i==0: if arr[i]==0: num+=1 else: if arr[i]%i==0: num+=1 print(num)
这个代码不是最优,大家可以再稍微优化精简一下。
标签: