码迷,mamicode.com
首页 > 其他好文 > 详细

一些常用术语

时间:2014-06-28 16:52:06      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:style   http   color   get   strong   width   

1.打表

打表,是一个信息学专用术语,意指对某种找规律等题目,直接输出答案。这种算法也在对某种题目没有最优解法时,用来得到分数的一种策略。

打表一般分为两步:找到答案与输出答案。
找到答案的方式
一、通过找规律,找出对于每个输入数据n,f[n]的最终结果。
常见题目有费波纳契数列等;
二、通过暴力搜索,找出对于数据的答案,适用于数据较大,题目简单的情况;
三、通过手算,找出每个数据的答案,适用于数据较小且题目较难的情况。
输出答案的方式
一、直接把打表程序加上输入输出提交:耗时大,程序占用空间小;
  
二、把打表的数据放入程序,加上输入输出提交:耗时O(1),程序占用空间大。
bubuko.com,布布扣

直接带入数据的打表占用空间大

打表的技巧

1、可把一些相差不大的数据化为与上一段之差:
例如: f[i]储存为f[i]-f[i-1]
输出时以前缀和形式输出。
2、分段打表。
把数据分为几段,每段根据输入数据,找到相应倍数进行输出。
 
就是在数据比较小的时候,比如测试数据只有一到一百的情况,你就可以先全部在自己的机子上算好,存入一个数组,交的时候只要cin>>n;cout<<a[n]<<endl;

一些常用术语,布布扣,bubuko.com

一些常用术语

标签:style   http   color   get   strong   width   

原文地址:http://www.cnblogs.com/zhangmingcheng/p/3797641.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!