pascal递归问题,第十六届信息学奥林匹克竞赛普及组阅读程序第三题,为什么第一题答案是1,第二个答案是4

2024-12-12 18:42:43
推荐回答(2个)
回答1:

递归类型的题最好的解题方法是列表法,所以:
n的值 r的值
1 1 {由于题目说了if n<=num then r:=n 所以前五个的值就出来了}
2 2
3 3
4 4
5 5
6 -1 {从第六个起,就要开始循环了,向前找5个数,如果都不小于1,r(6)就是-1}
7 1 {由于7的前一个值就小于一,所以r(7)就等于1}
8 2
9 3
10 4
11 5
12 -1
13 1
14 2
15 3
16 4
所以答案就是1和4

回答2:

输出:1
输出:4