有N本书,排成一行。珂珂发现从前向后看,从第1本开始,间隔是3的书都是她喜欢的,也就是第1、4、7、10…本书。乐乐发现从后向前看,从最后一本开始,间隔是4的书都是他喜欢的。 请问有多少本书是他们共同爱好的?
时间: 2023-06-24 08:05:54 浏览: 178
Java面试-leetcode题解之第875题爱吃香蕉的珂珂.zip
这是一个数学问题,不是IT类问题。不过,我们可以通过编写程序来解决这个问题。假设有N本书,我们可以用一个列表表示这些书,然后分别从前往后和从后往前遍历列表,找到符合条件的书,并记录下来。最后找到两个列表的交集即可得到他们共同爱好的书的数量。以下是Python代码实现:
```
N = 100 # 假设有100本书
books = list(range(1, N+1)) # 用列表表示这些书
# 从前往后找符合条件的书
keke_books = []
for i in range(0, N, 3):
keke_books.append(books[i])
# 从后往前找符合条件的书
lele_books = []
for i in range(N-1, -1, -4):
lele_books.append(books[i])
# 找到两个列表的交集
common_books = set(keke_books) & set(lele_books)
print(len(common_books)) # 输出共同爱好的书的数量
```
运行结果为:9,即他们共同爱好的书有9本。
阅读全文