以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。
求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3,输入2则输出-1。
数据范围:
输入描述:
输入一个int整数
输出描述:
输出返回的int值
思路:
数学规律题,除去1、2行是-1;其他偶数出现的位置按2、3、2、4排列;
step1:输入int整数;
step2:如果n为1或者2,打印-1;如果(n + 1)可以整除2,打印2;如果n可以整除4,打印3;如果(n + 2)可以整除4,打印4
代码如下:
n = int(input())
if n == 1 or n == 2:
print(-1)
elif (n + 1) % 2 == 0:
print(2)
elif n % 4 == 0:
print(3)
elif (n + 2) % 4 == 0:
print(4)