《程序设计竞赛培训》由会员分享,可在线阅读,更多相关《程序设计竞赛培训(3页珍藏版)》请在金锄头文库上搜索。
1、程序设计竞赛程序设计竞赛(ACM)培训培训ACMACM 程序设计群程序设计群(101471221)(101471221)一一、入队资格:兴趣、人品、一定的基础(暂不限定)。 二、参赛资格:要有一定的题数和编程能力(先过本院的竞赛) 三、目标:培养编程竞赛人才;及考研和做项目的人才。 四、队员要求:吃苦耐劳,积极钻研,诚实做题(事),学会感恩,学会贡献,如辅导学 弟、学妹、同学等。要自主学习、做小老师;要会与同学和老师合作。 五、历届 ACM 队队员的成就:大都在竞赛中获奖,最高奖全国三等奖;担当了辅导新同学 的责任;在 OJ 上出题;管理和建设 OJ;参与老师的项目。其中特别一提的是: 1王文
2、辉:创建我们现在使用的 OJ 平台;担当队里的小老师(与老师一样做的)。 2许建众:平台的考试系统的实现(IP 绑定的);OJ 平台的维护。 3黄雄峰:后台题库建设,一年多考试及竞赛试题的建立及管理;辅导众多的同学等。4陈勇:对班级同学多科辅导。 5吴振深:多线程的考试系统的建立;测试数据输入方式的重新建立;OJ 管理;三 钢项目中守护进程的程序设计。 6陈松金:OJ 中考试分数的实现;OJ 管理;三钢项目中报表与统计的程序设计。 7吴俊:OJ 管理;考试安全(U 盘、ftp、远程登录等的)限制与管理。810 同学参与教师项目和辅导全班同学的编程。接管 OJ 平台。 六、培训计划 1先在 PO
3、J、hduoj、FZUOJ、SMUoj 做一定数量的题目,达到快速阅读英文题、解决复 杂问题的能力;建立算法意识。 2深入所学的课程:如离散数学的应用(排斥原理等)、数据结构中二部图、哈希表、堆 排序等。 3扩展知识面:数论、组合数学、计算几何。 4各种算法:枚举、暴力、递归、搜索、背包、动态规划、网络流、最大流等。 5各种数据结构:线段树、并查集、树状数组等。 6C+及模板。 7竞赛题综合训练。 8时间安排: 元月 1923 日 5 天,开学初 2 月 25、26 两天。寒假在家自学。七、上课内容:1提交注意点:C 与 C+、GCC,不一样处在于(1)头文件、(2)main()的类型 int
4、、void,(3)长整形。一般 VC 编译C+,DEV 编译 GCC。2基础知识:POJ 1004、1552、2739、1005、1003、3299、2196、3094、1581、3006、2242、2136、1338、1833、1019、1405(P110)。(1)字符处理:POJ 2192、1488、3080、3461、3751、1446、1008、2351、2126、1782、2408、2121、2141、1080、1159、2406、1961、2752、1598、3337POJ 2192:给定String A: cat String B: tree String C: catrtee判
5、断 C 是否由 AB 组成,A、B 在 C 中的顺序不变。算法:判断 C 的前 K 个是否由 A 中的 i 个,B 中的 K-i 个组成。设Canij表示能由 A 中的 i 个,B 中 j 个组成。编程完成下表,表中的 Cannm为所求。cat1111t0010r0011e0001e0001顺序是每格由上和左的状态来判断。POJ 1833设当前排列为 num0numn-1。找它下一个排列的算法:1)从右向左找第一个非递增的位置 b,即 numb=.=numn-1.2)在 b 位置之后寻找大于 numb的最小的数 numk;3)重新递增排序 numb+1numn-1.例如 12435,b=3,12453.(2)递归:POJ 2083、1979、2013、1011(3)模拟:POJ 2121、2017、1922、1316、2000、1207、2864、1281、1396(P107)、(4)大整数运算:见(5)高精度运算:POJ 1504、1503(P102)、1001(P104)、1220(P105)、2413(P109)、(6)计算几何(7)数论(8)动态规划 POJ 1080、1159(9)线性表、链表、栈、队列POJ 2106 、3044、3750、 1363、2106、2259(SMUOJ Team queue)、3152、1591、1012、