跳转到内容

PPCA 2014

来自ACM Class Wiki

时间

6月26日至8月15日

上午:8:00-11:30

下午:14:00-17:30

晚上:18:30-21:00

周五晚因家住上海同学回家,不要求在机房。

周末不开放机房

地点

计算中心二楼

时间安排

第零周:

上午 下午 晚上
周四 课程介绍 函数式编程(赵卓越)
周五 机考

第一周:

上午 下午 晚上
周一
周二 linux,vim,git介绍(尹茂帆)
周三 代码风格及编程习惯(谢其哲)
周四
周五 机考 USACO及机考讲题

第二周:

上午 下午 晚上
周一
周二
周三 图论1(江川)
周四 自选主题演讲
周五 机考 USACO及机考讲题

第三周:

上午 下午 晚上
周一 大作业Specification
周二 可持续化数据结构(田博雨)
周三
周四 自选主题演讲 机考
周五 USACO及机考讲题

第四周:

上午 下午 晚上
周一
周二
周三 图论2(江川)
周四 自选主题演讲 机考
周五 USACO及机考讲题

第五周:

上午 下午 晚上
周一 计算几何(谢其哲)
周二 大作业第一次测试
周三
周四 自选主题演讲 机考
周五 USACO及机考讲题

第六周:

上午 下午 晚上
周一
周二
周三 图论3(江川)
周四 自选主题演讲
周五 机考 USACO及机考讲题


第七周:

上午 下午 晚上
周一
周二 并发编程(刘一鸣)
周三
周四
周五 机考 USACO及机考讲题

考核内容

机考

  • 机考时间为每周五08:00-11:00(第三四五周因助教上课改为周四14:00-17:00),所有同学必须参加。
  • 鼓励同学参与考试出题,以机考_名字(如考试_张三)为邮件标题将题目(包括出题意图、题目描述、测试数据、标准程序和解题报告)发至ppca2014@163.com。被采用题目的同学仍需到场参加机考,但当次考试记为满分。出题者尽量选择考”想法“而非考”知识“的题目,且有一定难度。在大家已有的知识背景下,经过仔细思考能做出的题最好。任何提供给助教的题目不得外泄。

自选主题演讲

  • 自选主题演讲安排在第二周到第六周每周四上午,每周有4-5位同学进行演讲。每位同学选择一个自己感兴趣的计算机科学方向的主题(可参考往届的演讲主题),演讲15-25分钟。
  • 请每周要演讲的同学在每周周二前把自己的演讲题目发到ppca2014@163.com。
  • 各位讲完以后请把自己的ppt发到ppca2014@163.com,标题为“演讲标题_姓名_自选主题演讲”。
编号 时间 演讲者 标题
1 7/10 姚京韬 prolog
2 7/10 宋时伟 神经网络
3 7/10 李佳骏 Divide and Conquer Algorithm
4 7/10 张曦虎 数据编码压缩与信息熵
5 7/10 郑宜霖 线程安全
6 7/17 高剑飞 网络爬虫
7 7/17 白志豪 量子算法
8 7/17 周耀达 PageRank算法
9 7/17 陆嘉辉 OCR
10 7/17 陈子豪 Bayesian Method
11 7/24 柏钧文 云存储
12 7/24 曹家梁 遗传算法
13 7/24 张億一 Introduction to Sparse
14 7/24 徐亦飞 HASH——精炼的艺术
15 7/24 陈昕昀 浅谈3-SAT问题
16 7/24 宋沁芸 失控
17 7/31 王歆 有上下界网络流的一些研究
18 7/31 王立力 网络经济
19 7/31 魏涛 Introduciton to Combinatorial Game
20 8/7 娄毅文 现代密码学
21 8/7 夏琛 Malware
22 8/7 魏楚 Trie
23 8/7 张家睿 Tips for Coding
24 8/7 翁健 C++11的那些新标准
25 8/7 马豪君 模式匹配之后缀自动机

自选作业

  • 每位同学参加以下四个项目中的一个,按照对应的要求完成相关的作业。

A. 编程实践

  • 负责人:谢其哲、江川
  • 独立完成USACO 1-5章,每周完成一章。每周日晚12点前上交本周所完成章节的程序,以USACO_章节_名字为邮件标题发送至ppca2014@163.com,如USACO_1章_张三。
  • 每周五下午讲解本周的机考题和USACO题目(部分),讲解的同学可以讲自己的思考过程(不一定是正解),可以讲由题目扩展出的想法,也可以讲从题目中学到的知识。
  • 按照第一次机考成绩分成若干组。每次每个小组派出2名同学报名讲一道题。为鼓励大家表达、交流自己的想法,根据讲题质量和数量对机考总评给予加分,机考总评加满为止。注意,关键在于把你自己的想法讲清楚,给别人讲懂,生动形象更佳。
  • 小组1:宋沁芸,魏楚,高剑飞,白志豪
  • 小组2:王立力,王歆,宋时伟,夏琛
  • 小组3:陈子豪,曹家梁,张億一,张家睿
  • 小组4:魏涛,陆嘉辉,娄毅文,翁健
  • 补充作业1(图论1):请完成POJ的1041、2337、1679、2762、1144、2117,并将代码于7月20日晚12点之前,以补充作业1_姓名为邮件标题发送至ppca2014@163.com。
  • 可持续化数据结构:请下载讲课ppt并选择一道题完成,PPCA结束前将代码以补充作业2_姓名为邮件标题发送至ppca2014@163.com。
  • 补充作业3(图论2):请完成POJ的3041、1466、2594、2195*,并将代码于8月3日晚12点之前,以补充作业3_姓名为邮件标题发送至ppca2014@163.com。其中2195可以在下一次图论作业的时候提交。
  • 补充作业4(计算几何):请完成POJ的2318、1269、1696、3348、1151,建议完成SJTU OJ1306,并将代码于8月10日晚12点之前,以补充作业4_姓名为邮件标题发送至ppca2014@163.com。
  • 补充作业5(图论3):请完成POJ的2125、1637、3281、2516(若在图论2中未完成2195则还需加上2195),并将代码于8月14日晚12点之前,以补充作业5_姓名为邮件标题发送至ppca2014@163.com。

B. 考试系统

  • 负责人:田博雨
  • 人员:郑宜霖、姚京韬
  • 为电院大平台机考开发一个机考系统,实现教师机对学生机网络连接的控制、程序提交等功能

C. Scheme解释器

  • 负责人:赵卓越
  • 人员:周耀达、张曦虎、马豪君
  • The objective of this project is to study the Scheme programming language by implementing a Scheme interpreter.
  • Baseline requirement: Implement a working interactive interpreter of Scheme in any programming language. The baseline test will be easy. The final submission should include the source code, a README explaining how to build and a report on anything you find interesting.
  • You are encouraged but not required to explore advanced topics. You will receive bonus credits if you implement interesting things and report them.
  • Test suite of PPCA2013
  • Test suite of PPCA2014 is available at https://github.com/zzy7896321/PPCA2014_scmtest.git.
  • Due time of the baseline requirement: August 15th, 23:59:59, UTC+8.
  • Due time of the advanced part and the report: August 22nd, 23:59:59, UTC+8.

D. 网页设计

  • 负责人:黄锃
  • 人员:柏钧文 陈昕昀 李佳骏 徐亦飞
  • 优化acm班现有的相关页面交互性
  • 更新陈旧班级页面
  • 搭建acm班自有的git平台和代码仓库
  • 详细目标
  • Useful links
* W3cSchool
* Markdown+R
* Markdown syntax
* A brief overview of github cooperation
* github + jekyll 搭建静态网页
* mediaqueries
* My article on responsive design

大作业

  • 德州扑克
  • 实现一个能正常运行的AI,并且有合理的运行时间
  • 尽可能地赢得更多的筹码,并且能适应不同类型的玩家
  • 在线测试时,会提供server的ip地址和端口,大约8至9人一组。
  • 最终提交包括AI实现的源代码和一份报告,报告需要简要阐述你的算法和独到之处。评分会根据在线测试成绩、提交的代码和报告综合确定。
  • 详细说明
  • 评测系统
   git clone https://github.com/zzy7896321/holdem
  • You are supposed to elaborate your AI implementation, compare the expected results and the actual results and analyze the causes in your report. You will receive extra credits if you memtion novel ideas and analyze them in your report.
  • Due time of the report:August 18th, 23:59:59, UTC+8. Late submission will not be accepted.

Test 0

Test 1

  • Time: August 4 afternoon.
  • The test on August 4th requires the clients to be updated to the version with tag test1-August4. Make sure you have pulled the up-to-date client, checked out to test1-August4 and re-compiled your AI.
  • Test1 results.

Test 2

  • Time: August 7 afternoon.
  • No scheduled update to the client. Use the version with tag test1-August4, please.
  • Test2 results.

Test 3

  • Time: August 11 afternoon.
  • There is no update to the client.
  • Random grouping.
  • Test3 results.

Test 4

Test 5 (final test)

  • Offline test.
  • Due time of submission: August 15, 23:59:59, UTC+8. Note: late submission will not be accepted.
  • Your submission should be a zip file containing a folder with your AI implementation inside. The folder's name is your name with no space (e.g. YaodaZhou). The AI implementation includes a single cpp file which implements the Player class, the two makefiles with AI variable properly set and an optional player.h if it is modified. Do not modify other contents of the makefiles, please.
  • Test 5 uses the client with tag test4-August14.
  • Send your code and report to zzy7896321[at]163.com.
  • Test5 results.

Extra Credit

  • 由于不同同学的编程基础不同,现有的任务对有些同学来说比较繁重,然而也有同学觉得比较轻松,剩余的时间无法做统一安排,因此鼓励同学们自己寻找东西去学习。
  • 请有想法的同学告知助教田博雨自己想学的东西,比如
 *写数值计算工具包
 *写计算几何工具包
 *写文本编辑器或内核(需用到可持续化数据结构)
 *搭建个人博客
 *自己开发app
 *等等
  • 报名Extra Credit的同学请在PPCA结束时请提交一个report,由助教评价你的工作并给予加分

注意事项

  • 禁止迟到、早退、翘课,因故不能上课需向助教请假。
  • 禁止将食品带入机房。
  • 固定座位,保护机房电脑。
  • 违反规定将酌情扣分。

人员

助教:

谢其哲 188壹柒柒贰0986 cheezer94^.^gmail.com
黄锃 189壹贰贰零2100 frequencyhzs^,^gmail.com
赵卓越 156伍壹贰柒9666 zzy7896321^o^163.com
田博雨 131陸陸贰贰6956 anshantby^O^163.com
江川 188壹捌贰壹3913 secret_jc^_^126.com

助理助教:

周耀达 187贰壹伍玖1384 judaplus^_^gmail.com
宋时伟 137柒肆贰贰2195 songsw.tony^_^gmail.com
柏钧文 183壹柒零零0586 5304618a^_^gmail.com

助教值班表

第一周:

上午 下午 晚上
周一 田博雨 赵卓越 谢其哲
周二 江川 黄锃 赵卓越
周三 谢其哲 江川 田博雨
周四 赵卓越,黄锃 黄锃 江川
周五 谢其哲 田博雨 赵卓越

第二周:

上午 下午 晚上
周一 田博雨 赵卓越 谢其哲
周二 江川 黄锃 赵卓越
周三 赵卓越 江川 田博雨
周四 谢其哲,黄锃 黄锃 江川
周五 谢其哲 田博雨 赵卓越

第三周:

上午 下午 晚上
周一 助理助教 赵卓越 谢其哲
周二 黄锃 黄锃 谢其哲
周三 助理助教 江川 田博雨
周四 赵卓越,江川 谢其哲 黄锃
周五 助理助教 田博雨

第四周:

上午 下午 晚上
周一 助理助教 赵卓越 谢其哲
周二 黄锃 黄锃 谢其哲
周三 助理助教 江川 田博雨
周四 赵卓越,江川 谢其哲 黄锃
周五 助理助教 田博雨

第五周:

上午 下午 晚上
周一 助理助教 田博雨 谢其哲
周二 赵卓越 黄锃 赵卓越
周三 助理助教 江川 江川
周四 田博雨,黄锃 谢其哲 江川
周五 助理助教 谢其哲

第六周:

上午 下午 晚上
周一 田博雨 黄锃 赵卓越
周二 江川 田博雨 谢其哲
周三 赵卓越 江川 黄锃
周四 田博雨,黄锃 赵卓越 江川
周五 谢其哲 谢其哲

第七周:

上午 下午 晚上
周一 田博雨 黄锃 赵卓越
周二 江川 田博雨 谢其哲
周三 赵卓越 江川 黄锃
周四 田博雨,黄锃 赵卓越 江川
周五 谢其哲 谢其哲

Useful Links