测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A49882. 有 n 个人围成一圈, 顺序排号。 从第一个人开始报数(从 1 到 3 报数), 凡报到 3 的人退出圈子, 问最后留下的是原来第几号的那位。n = int(input('请输入总人数:'))num = []for i in range(n): num.append( ① )i = 0k = 0m = 0while m < n - 1…

填空题 中等

题目描述

有 n 个人围成一圈, 顺序排号。 从第一个人开始报数(从 1 到 3 报数), 凡报到 3 的人

退出圈子, 问最后留下的是原来第几号的那位。

n = int(input('请输入总人数:'))

num = []

for i in range(n):

num.append( ① )

i = 0

k = 0

m = 0

while m < n - 1:

     if  ② : k += 1

     if k == 3:

            num[i] = 0

            k = 0

            ③

     i += 1

     if i == n : i = 0

i = 0

while num[i] == 0:

    i += 1

 print(④ )

参考答案

n = int(input('请输入总人数:')) num = [] for i in range(n): num.append(i + 1) i = 0 k = 0 m = 0 while m < n - 1: if num[i] != 0 : k += 1 if k == 3: num[i] = 0 k = 0 m += 1 i += 1 if i == n : i = 0 i = 0 while num[i] == 0:i += 1 print(num[i])
上一题 下一题