本课程配套教材如下:
[1] 黄龙军.程序设计竞赛入门(Python版·第2版),北京:清华大学出版社,2024.5. ISBN:9787302662143
[2] 黄龙军.程序设计竞赛入门(Python版),北京:清华大学出版社,2021.4. ISBN:9787302571230
本课程的开设目的在于使得非计算机类的其他专业的学生对程序设计竞赛及其基础知识有一定的了解和掌握,发现并吸引优秀学生加入ACM程序设计竞赛集训队。本课程以问题求解为主线,并着重引入程序设计竞赛的基础知识。本课程以Python语言为媒介,主要内容包括绪论、程序设计基础知识、程序控制结构、列表与字典、函数、类与对象、程序设计竞赛基础等,介绍程序设计的概念、思想和方法及程序设计竞赛相关知识,培养学生的计算思维,分析、解决具体问题的能力及创新能力。程序设计竞赛基础主要介绍递推与动态规划,简单数学问题与高精度处理、贪心法与回溯法及搜索入门等方面的入门知识。
通过学习本课程,使学生掌握必要的程序设计知识,主要包括程序设计基础知识、程序控制结构、列表与字典、函数、类与对象等,学会使用Python语言的集成开发和学习环境(Integrated Development and Learning Environment,简称IDLE),学会在线解题的方法;能对在线测评系统上的具体问题具有初步的算法设计与实现的能力及基本的程序调试能力;养成认真细致、实事求是、积极探索的科学态度和工作作风,形成理论联系实际、自主学习和探索创新的良好习惯。
总评成绩 = 平时成绩 × 50% + 期末成绩 × 50% 其中,平时成绩包括在线作业(30%)、平时表现(20%)等部分;期末考试采用开卷上机考试形式。
在线练习系统:
程序设计类试验辅助教学平台(简称PTA):https://pintia.cn/