资源预览内容
第1页 / 共23页
第2页 / 共23页
第3页 / 共23页
第4页 / 共23页
第5页 / 共23页
第6页 / 共23页
第7页 / 共23页
第8页 / 共23页
第9页 / 共23页
第10页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第四届软件大赛 比赛规则与内容说明组别变化n4个组别改为6个组别n原来的本科组细分为本科A组、本科B组n一本院校只能报本科A组,其它本科院校可自行选择A组或B组。Page 2c与c+的选择n题面上不会考核c+或面向对象的具体知识n仅仅是编程大题编程大题允许使用c+解答n其它题目中不会出现c+知识n虽然推荐使用vc工具,但不能使用非标准的c+类库,因而不能使用微软的MFC或ATL类库,不能使用windows APIPage 3C+涵盖范围n不会在给出的代码中含有类、对象等c+知识n不会在题目的描述中强制使用c+n对大题的解答允许使用c+编码n允许范围:ANSI C+标准n类,继承,多态.n允许使用STL类库n不允许使用 MFC类库n不允许使用 ATL类库Page 4环境变化(1)nJava环境没有变化n只允许JDK1.5,6.0以上特性禁止nIDE: JCreator2.0, Eclipse helios release2(不含JavaEE特性)n请检查IDE连接的JDK是否符合要求n检查eclipse是否开启了泛型功能n无论用何种工具,提交的结果:n只有一个文件n不包含任何工程配置文件Page 5环境变化(2)nC语言IDE: Dev-cpp 5.4.0,VC+6.0 简化版nDev-cpp 类似 linux下的gccn支持ANSI C+ n支持STL类库nVC为简化版n没有安装MFC库,ATL库n不可以使用CString等MFC类库n不可以使用CFile等类进行文件操作n不支持界面编程(规则中不允许调用Windows特定的API)Page 6题型变化n编程大题没有变化n仅仅是c/c+组允许使用ANSI C+ 特性n填空题变化n代码填空 代码填空 + 结果填空n代码填空:n读懂已知程序的逻辑,合理填空。n难度在于分析逻辑n结果填空:n不限制实现的手段(可以猜测或手工计算),只要给出结果就可以。n举例:1000! 中含有多少个数字2?Page 7必须的基础知识范围n大赛题目的设计本着尽可能需要最少的基础知识的原则n比的是组织逻辑的能力,不是对某个偏僻特性的记忆n所需的基础知识是绝大多数学校教材内容的交集nA组的少量题目可能会超越课本范围(后面列出)Page 8必须的领域知识n大赛题目的设计本着需要尽可能少的领域知识的原则n所有特殊领域知识,一定会在题目中详细描述,一定会有例如的说明语句,以免选手误解。n例外:数学领域n数学常识性知识不在题目中详述!n高中以内的数学知识n算数:素数,整出,余数,求模,不定方程 n代数:函数,方程,多项式,n解析几何:笛卡尔坐标系,点到直线的举例,极坐标,n复数:模,夹角,矢量的合成和分解Page 9Java组别基本n基础:变量,操作符,选择,循环,递归n面向对象:类,对象,引用,构造方法,参数传递,this引用,static,继承,多态,接口,内部类,匿名类n异常与保护nI/O:读写文件,File类,文本操作与二进制操作(字节流,字符流)n多线程:线程的排斥(synchronized),协作(wait, notify)n网络:只限于Socket通信n不会出现:nAWT,Swing界面类的编程或填空问题nJSP, Servlet, HTML, CSS,XML, JavaScript 等web编程相关nStruts, Spring等开源框架nJavaEE 规范,容器(例如: JNDI, javaBean等)nJDBC, SQL 等数据库编程相关内容Page 10Java组nJava本科B组增加n对多种数据结构的灵活运用nJava本科A组增加n设计模式,反射,XML,多核与并发,测试理论,Swing界面 n仅限于少量题目中可能涉及Page 11c/c+组基本n基本:变量,运算符,选择,循环,数组,指针,递归nI/O:读写文件,标准输入输出,文件属性n不会出现:n含有窗口的Windows界面编程n多线程n网络编程、Web应用n数据库编程n调用底层中断或硬件相关的编程n其它一定需要非ANSI C标准调用的编程Page 12c/c+组nc/c+本科B组增加n 数据结构、函数指针、位运算 nc/c+本科A组增加n函数模板、复杂宏、汇编知识 n仅限于少量题目中可能涉及Page 13数据结构与算法n本科组数据结构教材为准n可能直接引用其中的术语,不再做解释。比如:题面中可能出现:这是一个平衡二叉树,至于什么是平衡二叉树可以不解释,当作是选手清楚的基础知识。n专科组,不会在题面中出现数据结构课程中才有的特定术语;如实在无法避开,会给出那个概念的详细解释。n但允许选手使用任何数据结构中的技巧或实现。nC+ 允许使用 STLnJava 允许使用 JDK1.5范围内的APIPage 14算法n穷举法(暴力破解)n回溯法(试探,返回,试探,返回)n分治法n动态规划n算法不是死的,可以有各种灵活的“杂合”或“变种”n程序填空题中可能含有某个算法的思想,需要能读懂n专科组除了“穷举法”,其它不会在题面代码中出现Page 15关于递归n递归是解决复杂问题的重要手段n需要掌握递归与循环的转化关系n有些结果填空题或大题完全放弃递归会很吃力n取球问题举例Page 16评分方法(1)n阅卷方式:程序自动+少量人工n结果填空题n与标准答案一致,则得分n比对时会去掉前后多余的空白字符Page 17评分方法(2)n代码填空题n与标准答案一致,得分n不一致的带入测试程序,结果正确得分n选手理解错误:不需要填写其它,只填写缺少的部分n选手粗心:分号已经存在了,中西文符号问题n粗心会按统一标准扣分,将来全自动机器阅卷可能完全不给分nC代码填空举例Page 18评分方法(3)n编程大题n主要依据程序自动测试运行结果n编译不通过的直接按0分记n多个测试用例,每个用例单独测试,单独计分n最后求累计分数n存在问题n测试用例与题面举例不同,不能用printf System.out.println 蒙混n使用标准输入、输出。 便于重定向测试。n严格按题目要求,不要画蛇添足。输出的内容不要有多余的东西。n将来用全自动机器阅卷会判负n思维要严密。边界条件判断不足,引发异常,会酌情扣分。n大数据规模。算法设计不当会导致溢出或速度不可忍受。Page 19评分标准(4)n人工辅助的环节(小于题目分值的5%)n大题测试完全通过,如何比拼?n依运行时间的加分(体现算法的效率)n如果运行时间相仿?n依代码的规范性、可读性、可维护性加分Page 20题目难度n坚持原创性,押题不容易。n难度低于ACMn有些题目受NOI, IOI, POJ, ACM, TopCode等知名赛事题目的启发n注重普及性,让尽可能多的选手参赛本身可以获得启发或收获n大赛的目标之一:传播知识n难度高于期末考试,更重要的是注重了趣味性。n举例-魔方问题n不同于纯粹的语法考试,注重在工程应用领域的意义。n有些题目原型是高校或研究单位的论文成果。n举例-图像面积计数问题Page 21如何备战n基础知识扎实n真正理解,彻底理解,不是一知半解!n主要是培养逻辑能力,可以通过各种题目练习n数学练习很重要,最有成效!n例如:欧拉计划 网站n国外教材的习题很有挑战性、开放性njava大学教程 c+大学教程Page 22题目素材或背景n数学素材,最普遍n串的各种变换njava允许使用正则,可能会事半功倍n文件内容的处理n文本文件转换格式,比较,搜索等n二进制文件提取某种信息,某种映射n仿真问题n类似电梯调用,餐厅调用等。n各种概率问题n求最优解问题n博弈问题Page 23
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号