文章来源: http://thunderfyc.wordpress.com.cn
初赛
选择
数学问题(集合 真值表)
数据结构(队列 栈 Hash 查找 排序的操作)
计算机知识(硬件 软件 网络)
编程原理(语言类别 编译原理 历史)
数学
排列组合
概率等
阅读
2小2大的类型
胡乱变量相互操作 变量表的记录
指针操作 指向内存改变和内存记录的改变
递归类 将递归每层都记录下来
循环类 每次循环都作一个二维的变量表
注意将大的程序段划分
对于若干子的小程序 记忆程序功能
可在对输入数据操作的时候 不需要再看程序操作 可以加速
注意输出的格式
填空
终止条件
循环范围
递归语句
输入输出部分
主要计算部分
读入题目之后 自己先构思一个程序
将自己的程序和给出的程序进行比较
可以判断填空部分需要的内容
然后先填入 再阅读
进行调整
文章来源: http://thunderfyc.wordpress.com.cn
程序设计
读题
确定抽象模型 判断问题规模
建模
根据问题规模确定适用的解决方法
算法
将粗略程序框架构建出来
代码
将每个粗略的子程序 分块写出
子程序之间用变量交换信息
结构化程序设计
变量命名注意唯一性
注意全局变量和局部的区别
注意传值参变量是否允许修改
变量注释
注意程序的宽度拉伸
在符号两边有空格
4格缩进
语句注释
长度拉伸
一行一句话
不同功能子程序之间空行
子程序注释
测试
可以在程序中添加调试代码
临时输出一些变量
注意备份程序
对于要优化的程序
写一个随机生成数据程序 生成小数据
写一个保证正确的低效率程序
通过不断的重复测试 找到WA的数据 调试
白箱测试
反复阅读代码
判断可能出现的问题
调试
输出临时信息帮助判断
信息过多可另写程序帮助判断
分步调试
逐个排除子程序的问题
在子程序中找错误语句
白箱调试
判断是否完全符合题意
所有情况都考虑到
混分
边界条件输出
打表输出
逐个用低效算法计算存储后输出
贪心
用直观算法贪心计算
通过不同的贪心策略来取最优
输出定值
文章来源: http://thunderfyc.wordpress.com.cn
