Python 练习

今天我们也要来解APCS的题目,今天是105年10月29的实作题第三题,那我们就开始吧!

题目

https://ithelp.ithome.com.tw/upload/images/20210928/20140468p0zUnIZjV7.png

解答

https://ithelp.ithome.com.tw/upload/images/20210929/20140468OQfGFCXjl5.png

a=input().split()               #此输入N M K
N=int(a[0])
M=int(a[1])
K=int(a[2])

list=[]
x=0

for i in range(1,N+1):          #建立一个1到N的清单,例:N=5,建立[1,2,3,4,5]
    list.append(i)

for j in range(0,K):            #此回圈运行K次,将已爆炸的数字删除
    if (M+x)>N:                     #如果下个要爆炸的排序过远,就要取余数,要不然会超出清单
        del list[((M+x)%N-1)]
        x=(M+x)%N-1
    else:
        del list[(M+x)-1]
        x=(M+x)-1
    N=N-1                       #N为清单中个数
    

if x==N:                        #打印出上次爆炸的下一个数字
    print(list[0])
else:
    print(list[x])

以上是解答,然後今天所用到的语法不多,但是需要大量的思考,大家可以来想想看!我也有把解释放旁边,大家可以参考。


<<:  DAY 13 - 时钟怪 (2)

>>:  Day13. UX/UI 设计流程之三: UI Flow (并使用Axure RP 实作)

【没钱买ps,PyQt自己写】Day 9 - 以 QLineEdit, QTextEdit, QPlainTextEdit 作为文字的输入

看完这篇文章你会得到的成果图 前言 我们接下来的讨论,会基於读者已经先读过我 day5 文章 的架构...

[Day9] Vite 出小蜜蜂~撞击行为 Collision Behavior!

Day9 Collision Behavior 当 Laser 跟 Squid 相互撞击时, 我们想...

铁人赛 Day1 -- 天哪~ 新手村的我到底该不该先学PHP !!

(以下有说错的,在劳烦各位大大告诉我,感谢各位学长姐) 其实一开始我在想说我的SQL资料库要用哪个语...

[Day3]什麽是比特币?

hi!今天的主题是比特币!会分成五个部分做介绍,有定义、起源、特性、交易、比较,如果对比特币有兴趣...

[Day25] 测试一定要写好写满?时间有限怎麽办?

既然要写测试,就先来了解前端常见的几种测试类型,从最大家最常听到的单元测试(Unit Testing...