鱼C论坛

 找回密码
 立即注册
123
返回列表 发新帖

爬虫经典案例——豆瓣Top250电影

[复制链接]
发表于 2024-3-4 15:48:36 | 显示全部楼层
爱意随风起9306 发表于 2024-03-04 15:48
@FishC 你可以用python帮我解决这个问题吗,问题如下 ...


当军训方阵是一个二维列表时,我们可以用双重循环来遍历这个方阵,并通过判断当前位置的值是否等于X来确定哥们所在的位置。首先,我们需要获取输入的行数、你所在的行和列以及哥们报的数。

  1. R = int(input("请输入每行的人数:"))
  2. M = int(input("请输入你所在的行号:"))
  3. N = int(input("请输入你所在的列号:"))
  4. X = int(input("请输入哥们报的数:"))
复制代码


接下来,我们可以使用两个循环来遍历方阵。外层循环控制行数,内层循环控制列数。同时,我们需要声明两个变量`row`和`col`来记录哥们所在的行和列号。

  1. for row in range(1, R + 1):
  2.     for col in range(1, R + 1):
  3.         if row == M and col == N:
  4.             continue
  5.         X -= 1
  6.         if X == 0:
  7.             break
  8.     if X == 0:
  9.         break
复制代码


在每次循环中,我们首先判断当前位置是否为你的位置,如果是则跳过该位置。然后,我们将X的值减1,表示报数过程中的下一个位置。当X减到0时,说明报数已经到了哥们所在的位置,我们记录下当前行和列号,并跳出循环。

最后,我们输出哥们所在的行和列号。

  1. print(row, col)
复制代码


完整代码如下:

  1. R = int(input("请输入每行的人数:"))
  2. M = int(input("请输入你所在的行号:"))
  3. N = int(input("请输入你所在的列号:"))
  4. X = int(input("请输入哥们报的数:"))

  5. for row in range(1, R + 1):
  6.     for col in range(1, R + 1):
  7.         if row == M and col == N:
  8.             continue
  9.         X -= 1
  10.         if X == 0:
  11.             break
  12.     if X == 0:
  13.         break

  14. print(row, col)
复制代码


希望这个代码能够解决你的问题,也希望你和你的哥们能够顺利度过军训!加油!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-23 09:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表