Programming 2023
外观
上机课安排
- 时间:每周一晚上18:30
- 地点:软件学院一楼 5-104 机房
分数构成
- 期末考试(笔试+期末机考) 50%
- 机考 10%
- 小作业 10%
- 大作业:Minesweeper 4%
- 大作业:ICPC Ranking 6%
- 大作业:Integer 6%
- 大作业:Python 解释器 / Basic 解释器 7%
- 大作业:Bookstore 7%
时间表
第 1 周
- 上机课介绍 文件:2023上机课介绍.pptx
- OJ 介绍(网址:https://acm.sjtu.edu.cn/OnlineJudge )
- 学术诚信&如何提问(文件:学术诚信&如何提问(2023).pptx | 文件:ACM班学术规范指南(2023).pdf)
- 零基础生存指南(文件:零基础生存指南2023.pptx)
- 第 1 次小作业(Sep-11-2023 20:30:00 ~ Sep-25-2023 18:30:00)
第 2 周
- 计算机科学导论
- A 班:计算机体系结构的基本知识 (文件:Introduction to Computer System.pdf)
- B 班:进制转换、位运算、时间复杂度等 (文件:计算机入门选讲.pptx)
- 参考资料
第 3 周
- 第 0 次机考
- Code style & Linux shell (文件:CodeStyle&Shell.pdf)
- 第 1 次大作业:Minesweeper(Sep-25-2023 18:00:00 ~ Oct-09-2023 18:00:00)
- 发布 slides (文件:Minesweeper.pdf)
- 作业仓库
- 作业提交
- 第 2 次小作业(Sep-25-2023 20:30:00 ~ Oct-09-2023 18:30:00)
第 5 周
- A 班:启发式算法(文件:启发式专题.pptx)
- B 班:搜索与枚举(文件:枚举+搜索.pdf)
- 第 2 次大作业:ICPC Management System
- A 班:Oct-09-2023 20:00:00 ~ Oct-23-2023 18:00:00
- B 班:Oct-09-2023 20:00:00 ~ Nov-6-2023 18:00:00
- STL 介绍(文件:STL介绍.pdf)与发布 slides(文件:ICPC发布.pptx)
- 作业仓库
- 作业提交
- 第 3 次小作业(Oct-09-2023 19:30:00 ~ Oct-23-2023 18:00:00)
第 6 周
- 第 1 次机考
- Debug (文件:Debug(2023).pptx)
第 7 周
- Git, GitHub 与 CMake 的使用(文件:IntroGitAndCMake.pdf)
- 第 3 次大作业:int2048
- A 班:Oct-23-2023 20:00:00 ~ Nov-6-2023 18:00:00
- B 班:Nov-6-2023 20:00:00 ~ Nov-20-2023 18:00:00
- 发布 slides(文件:Int2048.pptx)
- 作业仓库
- 作业提交
第 8 周
- A 班:字符串与后缀数组(文件:字符串杂讲.pptx,文件:后缀数组.pptx)
- B 班:排序与贪心(文件:Lecture notes.pdf)
- 第 4 次小作业(Oct-30-2023 20:30:00 ~ Nov-13-2023 18:30:00)
第 9 周
- 第 2 次机考
- 第 4 次大作业:Python Interpreter(A 班)
- Oct-30-2023 20:30:00 ~ Nov-27-2023 18:30:00
- 发布 slides(文件:Python Interpreter.pptx)
- 作业仓库
- 作业提交
第 10 周
- A 班:分治算法(文件:Basis.pdf)
- B 班:二分+分治(文件:二分&分治.pptx)
- 第 5 次小作业(Nov-13-2023 20:30:00 ~ Nov-27-2023 18:00:00)
第 11 周
- 第 3 次机考
- 第 4 次大作业:Basic Interpreter(B 班)
- Nov-20-2023 18:30:00 ~ Dec-04-2023 18:30:00
- 发布 slides(文件:Basic release 2023.pptx)
- 作业仓库
- 作业提交
第 12 周
- 第 5 次大作业:Bookstore
- Nov-27-2023 20:30:00 ~ Dec-25-2023 18:30:00
- 发布 slides(文件:Bookstore-Release.pptx)
- 作业仓库
- 作业提交
第 13 周
- A 班:DP 优化(文件:Dp优化.pdf)
- B 班:DP 基础(文件:Dp.pdf)
- 第 6 次小作业(Dec-03-2023 20:00:00 ~ Dec-18-2023 18:00:00)
第 14 周
第 15 周
- 期末机考模拟(2022 年机考题)
第 16 周
- 期末机考
机考
每 2~3 周开展一次机考,每次机考共 5 题。B 班做第 1~3 题,A班做第 3~5 题。
作业
小作业
每 2~3 周布置一次小作业,每次小作业持续 2 周。
- 第 1 次小作业(Sep-11-2023 20:30:00 ~ Sep-25-2023 18:30:00)
- 第 2 次小作业(Sep-25-2023 20:30:00 ~ Oct-09-2023 18:30:00)
- 第 3 次小作业(Oct-09-2023 19:30:00 ~ Oct-23-2023 18:00:00)
- 第 4 次小作业(Oct-30-2023 20:30:00 ~ Nov-13-2023 18:30:00)
- 第 5 次小作业(Nov-13-2023 20:30:00 ~ Nov-27-2023 18:00:00)
- 第 6 次小作业(Dec-03-2023 20:00:00 ~ Dec-18-2023 18:00:00)
大作业
大作业1:Minesweeper
作业要求详见GitHub 作业页面。
分数构成
- 基础任务 - 实现 server(参考 OJ 测评 得分给出)
- A 班:60%
- B 班:80%
- 进阶任务 - 实现 client(根据 OJ 测评 得分给出)
- A 班:40%
- B 班:10%
- Code Review - 20%
大作业2:ICPC Ranking
作业要求详见GitHub 作业页面
发布 slides: 文件:ICPC发布.pptx
截止时间
A 班
- ICPC Management System (2023 A) 与分析报告:第 7 周周一(10 月 23 日)18:00
B 班
- STL 练习:第 6 周周一(10 月 16 日)18:00
- 前置作业:第 6 周周四(10 月 19 日)20:00
- 中期检查:第 7 周周二(10 月 24 日)答疑时间
- ICPC Management System (2023 B) 与分析报告:第 8 周周一(10 月 30 日)18:00
分数构成
A 班
- 通过 1986. ICPC Management System (2023 A) (80%)
- Code review & 复杂度分析报告 (20%)
B 班
- 通过 STL 练习 1383. 聪老师不想摸鱼
- 通过前置作业 1346. Michelle 的学生会工作
- 通过 1987. ICPC Management System (2023 B) (60%)
- Code Review (20%)
大作业3:int2048
分数构成
code review 中若码风较差将酌情扣分。
PS:Bonus 部分对代码性能也有要求,需要通过对应的测试数据点才能得到分数。且 Bonus 上限为 5%,超过不溢出。
B 班
- 构造函数以及关系运算符: 10%
- 无符号高精度加减法: 10%
- 有符号高精度加减法: 10%
- 高精度乘法: 10%
- 高精度除法: 15%
- 压位高精度加、减、乘法: 30%
- 压位高精度除法: 15%
- BONUS:压位快速高精度除法(分治乘法): 1%
- BONUS:压位快速高精度除法(二分加速试商): 4%
A 班
- 构造函数以及关系运算符 10%
- 无符号高精度加减法 5%
- 有符号高精度加减法 10%
- 高精度乘法 10%
- 高精度除法 10%
- 压位高精度加、减、乘法 20%
- 压位高精度除法(二分加速试商) 15%
- 压位快速高精度乘法(快速傅立叶变换) 20%
- BONUS:压位快速高精度除法(分治除法)3%
- BONUS:压位快速高精度除法(牛顿迭代法) 5%
大作业4A:Python 解释器
大作业4B:Basic 解释器
下发材料
大作业5:Bookstore
下发材料
助教
Name | |
---|---|
杨晋晟 | modem514@sjtu.edu.cn |
潘屹 | conlesspan@sjtu.edu.cn |
王冠杰 | irfnfnkemed@sjtu.edu.cn |
王鲲鹏 | kunpengwang@sjtu.edu.cn |
徐子绎 | xzy2022@sjtu.edu.cn |
张世奇 | zsq259@sjtu.edu.cn |
蒋松霖 | clorf6@sjtu.edu.cn |
陈一星 | polaris_dane@sjtu.edu.cn |
杨承羲 | arcadia-y@sjtu.edu.cn |
江语 | jy_15924374500@sjtu.edu.cn |
杨茗焱 | yangmingyan@sjtu.edu.cn |
李心瑶 | lxy4488@sjtu.edu.cn |
何彦衡 | henryhe_sjtu@sjtu.edu.cn |
马逸飞 | shenjidf11@sjtu.edu.cn |
薛佳锐 | 2022xjr@sjtu.edu.cn |
李兴阳 | brucelee_sjtu@sjtu.edu.cn |