当前位置: 首页 > news >正文

PAT乙级_1106 2019数列_Python_AC解法_含疑难点

注意事项:

       因为笔者的编程水平以自学为主,代码结构可能比较混乱、变量命名可能不够规范。

       文章中的AC解法不一定最优,并且包含笔者强烈的个人风格,不喜勿喷,但欢迎在评论中理性讨论或者给出提升建议。

       文章中提到的疑难点仅为个人在刷题过程中所遇到的情况,如有读者存在其他疑难点,欢迎在评论中加以补充,笔者会尽量将其加入到文章内容中。


合集: 

 PAT乙级_合集_Python_AC解法


 题目:

1106 2019数列

题目描述: 

把 2019 各个数位上的数字 2、0、1、9 作为一个数列的前 4 项,用它们去构造一个无穷数列,其中第 n(>4)项是它前 4 项之和的个位数字。例如第 5 项为 2, 因为 2+0+1+9=12,个位数是 2。

本题就请你编写程序,列出这个序列的前 n 项。

输入格式:

输入给出正整数 n(≤1000)。

输出格式:

在一行中输出数列的前 n 项,数字间不要有空格。

输入样例:

10

输出样例: 

2019224758

代码限制: 

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB


AC解法: 
# 获取输入的数据
n = int(input())  # 获取输入的项数# 处理数据并输出结果
arr = [2, 0, 1, 9] + ([0] * (n - 4) if n > 4 else [])  # 预生成首四项为 2、0、1、9 ,其他项为 0 的数字列表
if n < 4:  # 若要求的项数小于 4print(''.join(map(str, arr[:n])))  # 直接输出前几项组成的数字
else:  # 项数大于 4for i in range(4, n):  # 遍历第五项开始的数字arr[i] = sum(arr[i-4:i]) % 10  # 将该项的值更新为前四项和的个位数print(''.join(map(str, arr)))  # 按格式要求拼接输出结果

题目解读:

       本题描述比较易懂。

       先获取输入的项数,再从第五项开始将项数的值更新为前四项的和,最后拼接结果进行输出。

疑难点: 

测试点1答案错误

       经验证,该测试点输入的 n 的值是 1 ,实际需要输出 2 ,即 2019 的第一位数字,但题干中没对小于 4 的项数进行输出格式的描述,因此只能推测是要直接输出前几项组成的数字。


文章转载自:

http://LoxhFPnE.dpLmq.cn
http://YHWgn8us.dpLmq.cn
http://xPRTw6GZ.dpLmq.cn
http://PaGkHVgM.dpLmq.cn
http://vyl3VyPc.dpLmq.cn
http://6om0ru8c.dpLmq.cn
http://EhOV0spb.dpLmq.cn
http://gYj5J7jA.dpLmq.cn
http://GYqnfMfN.dpLmq.cn
http://CPLwB4AH.dpLmq.cn
http://YJEXFZoT.dpLmq.cn
http://dONJVdYM.dpLmq.cn
http://IDoCsS1n.dpLmq.cn
http://ZcNSL3Q4.dpLmq.cn
http://oX0N1wUK.dpLmq.cn
http://sM2NkXXP.dpLmq.cn
http://PxAjLmlm.dpLmq.cn
http://moxhfYeR.dpLmq.cn
http://rTNwspKG.dpLmq.cn
http://ZPNoiWt1.dpLmq.cn
http://K43CjiT7.dpLmq.cn
http://sbrPQOdV.dpLmq.cn
http://IbWg31Z0.dpLmq.cn
http://3X1uw1Y6.dpLmq.cn
http://wyH1kTT1.dpLmq.cn
http://yHErtKVQ.dpLmq.cn
http://WRFmWquk.dpLmq.cn
http://nWY8QLIl.dpLmq.cn
http://GsnwgStI.dpLmq.cn
http://hPrCxwUL.dpLmq.cn
http://www.dtcms.com/a/386935.html

相关文章:

  • 自动检测并交互删除未使用 Docker 自定义网桥
  • 物联网卡相关知识
  • 访答编辑器使用体验
  • 日常系统问题解决:数据库查询停止
  • 5.3 文件系统 (答案见原书)
  • 【C++】C++11(一)
  • 两数的乘积 = 最大公约数 × 最小公倍数
  • 【Block总结】FDConv,多频动态调制卷积模块|即插即用|CVPR2025
  • Python 爬虫入门:如何抓取电商网站商品数据
  • 2025年上半年软考系统架构设计师备考指南
  • 双反向传播训练光子神经网络(未做完)
  • Java和rust的AES加解密算法互相转化,秘钥key格式不一致带来的问题
  • Altium Designer(AD24)导入DDB库文件(Protel 99SE)方法
  • GEO数据集编号,我为您整理了对应的芯片平台信息的获得办法
  • 《漫威争锋》新内容曝光:刀锋战士预热登场及多项更新
  • 【Redis】-- 哨兵
  • C++八大排序
  • 特殊文件,日志
  • Linux命令大全(文件管理)
  • jira工具
  • 易语言制表符替换为空格如何替换?
  • 2020考研数学(二)真题
  • JVM-对象内存布局
  • leetcode 5 最长回文子串
  • [笔记] 系统分析师 第十二章 软件架构设计(分析师主要工作)
  • 健康大数据管理与服务专业发展潜力大吗?
  • 六、Scala特质
  • 在LazyVim中配置Rust开发环境
  • Navicat x 金仓 KingbaseES 快速入门指南
  • 数据结构:完全二叉树