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

A25241. 编程实现:小明将黄色和蓝色的正方形卡片按如下规律摆放:给定一个整数 N,按照规律计算第 N 行有多少张黄色卡片。例如:N = 5;第 5 行有 3 张黄色卡片。输入描述:输入一个整数 N(5≤N≤1000)。输出描述:输出一个整数,表示第 N 行有多少张黄色卡片。样例输入:5 样例输出:3

填空题 容易

题目描述

编程实现:

小明将黄色和蓝色的正方形卡片按如下规律摆放:

给定一个整数 N,按照规律计算第 N 行有多少张黄色卡片。

例如:N = 5;第 5 行有 3 张黄色卡片。

输入描述:

输入一个整数 N(5≤N≤1000)。

输出描述:

输出一个整数,表示第 N 行有多少张黄色卡片。

样例输入:

5

样例输出:

3

参考答案

n = int(input( )) if n <= 4: res = [0, 1, 1, 2, 3] print(res[n]) else: dp = [0] * (n + 1) dp[1] = 1 dp[2] = 1 dp[3] = 2 dp[4] = 3 for i in range(5, n + 1): dp[i] = dp[i - 2] + dp[i - 4] print(dp[n])

答案解析

动态规划求解,初始化前 4 行,后续按递推公式计算。根据卡片摆放规律,求第 N 行的黄色卡片数量。规律为:

第 1 行:1 张

第 2 行:1 张

第 3 行:2 张

第 4 行:3 张

第 n 行(n ≥ 5):f(n) = f(n-2) + f(n-4)

上一题 下一题