python洛谷p1634 禽兽的传染病
时间: 2024-01-11 15:22:32 浏览: 33
以下是Python洛谷p1634 "禽兽的传染病"的示例代码:
```python
n = int(input().strip())
if 1456 <= n <= 145600:
num = n // (52 * 7)
dict_num = {}
for x in range(100, 0, -1):
if x < num and (num - x) % 3 == 0:
k = (num - x) // 3
dict_num[str(x)] = k
list_num = sorted(dict_num.items(), key=lambda m: m[1])
print(list_num[0][0])
print(list_num[0][1])
```
这段代码的功能是根据输入的数字n,计算出符合条件的x和k的值,并输出x和k的最小值。具体的实现步骤如下:
1. 首先,将输入的数字n转换为整型。
2. 判断n是否在1456到145600之间,如果不在这个范围内,则不进行计算。
3. 计算num的值,即n除以(52 * 7)的商。
4. 创建一个空字典dict_num,用于存储符合条件的x和k的值。
5. 使用循环从100到1递减的方式遍历x的取值。
6. 在循环中,判断x是否小于num,并且(num - x)能够被3整除。如果满足条件,则计算k的值,并将x和k存储到dict_num字典中。
7. 使用sorted函数对dict_num字典按照k的值进行排序,并将结果存储到list_num列表中。
8. 输出list_num列表中的第一个元素的第一个值,即x的最小值。
9. 输出list_num列表中的第一个元素的第二个值,即k的最小值。