-----ACM总结整理------
文章平均质量分 59
代码是块糖
来自SDUT计院学生一枚。个人主页:http://www.ihypo.net
展开
-
擂台筛选最大最小值
经常各种问题需要筛选最大最小值,但是,在擂台选择比较的时候,需要对max和mix初始化,因为需要选择的缘故,max可以初始化为0,但是当选择序列里有负数,这也是行不通的,对于最小值,要初始化一定要尽量大,什么是尽量大呢?所以为了解决这个问题,初始化可以把第一个元素给他,当然,用数组的话这样是很方便的。 //SDUT 1573#include int main(){ f原创 2013-11-30 23:56:51 · 1617 阅读 · 0 评论 -
【转载】减少cin的写入时间
好好规划了一下,发现到大二开学,能被自己好好支配的转载 2014-06-15 19:30:21 · 2217 阅读 · 0 评论 -
AC 210+之后突然想整理些什么
从开学到现在,不知道写了多少代码,看着每次的WA、PE变为红色的AC,心中早由原来的激动变为自认为理所当然,再变为有所祈祷。不知不觉已经AC213题目,回想原来出过的各种错误,突然想把经常出现的错误整理出来。1.输入未加取地址符scanf ("%d",a);这样的错误往往会造成程序停止,还是很好排错的,但是,稍有进化就不是这样了。比如下面的;2.指针使用不规范while原创 2013-11-29 03:13:00 · 1024 阅读 · 0 评论 -
重温位操作
原创 2014-05-10 00:09:55 · 916 阅读 · 1 评论 -
KMP小结
经过一天KMP的学习,总算有些眉目。KMP就是对简单匹配的改进,通过建立Next数组记录串成员的位置来避免了一个指针的回溯来降低时间复杂度。KMP的核心就是这个next数组,而next数组的实质是着实不好理解。对于KMP,我理解的next数组是储存了,模式串当前位置前和模式串前多少个字符相同,可以指针前移而不用比较。对于KMPVAL中的next,我的理解是与KMP类似,记录了的将要原创 2014-02-11 20:08:24 · 1915 阅读 · 0 评论 -
10个调试和排错的小建议
在空白的文本编辑器里打开一个崭新的文本,没有一行代码,出现在眼前的是一个充满了无限可能和希望的项目。可是,当数千行的代码写完之后,整个项目因为bug的出现而被压垮了,更别说添加什么新功能了...这也许是对程序员的最大打击,在饱满的热情上浇了一盆冷水。其实,最好的软件程序员当然知道怎样去发现并修复这些bug,在刚开始编程的时候就通过软件工程的最好方法来降低bug的出现概率。 几乎没有哪个程序转载 2014-01-28 19:30:09 · 709 阅读 · 0 评论 -
前缀&&中缀&&后缀表达式
1.中缀表达式转换为前缀表达式。 首先创建算术符栈OPTR和表达式栈RESULT并置空,然后依次逆序检查中缀表达式每个字符,不同字符按不同情况处理: (1).若是空格直接跳过。 (2).若是操作数直接压入RESULT栈。(3).若是‘)’直接存入OPTR栈,等待和它匹配的‘(’出现。 (4).若是‘(’表明括号中的终追表达式已转换完毕,则循环弹出OPTR栈的操作符, 并压入R转载 2014-01-16 19:23:52 · 1153 阅读 · 0 评论 -
线性表总结
今天集训的任务是线性表,主要是链表之类的东西,由于进度快些,从昨天就入手链表的题开始做,加上以前对单链表的基础,今天的任务并不感觉繁重。值得纪念的是今天终于从对链表“能用”转变为“会用”在此,更要趁热打铁总结一下;先是链表的创建#include #include struct mem{ int date; struct mem *next;};struct原创 2014-01-15 15:18:53 · 708 阅读 · 0 评论 -
只为快速构建链表之链表模版
链表感觉用起来方便,构建起来XD,呵呵所以就想像大数一样写个总结模版之类的,以后用起来也有参照,也许用着用着就不怕了。话说这个段代码编译没问题,还没有实战过。#include #include struct mem{ int date; struct mem *next;};struct mem *head = NULL,*now,*tmp;int a原创 2014-01-12 04:35:31 · 630 阅读 · 0 评论 -
快排小试之万数排序
早就听说过快速排序法(主要是叶大神整天叨叨快排),想到这么重要的算法还不会各种羞愧,然后就百度百科,自己摸索领悟这个算法,居然像模像样的把算法实现了个大概,然后,同时写了冒泡,打算让他们PK一下!!!先把这个程序贴出来。原创 2014-01-12 03:49:51 · 964 阅读 · 1 评论 -
近似求阶乘-斯特林公式
今天做Factstone Benchmark这个题,需要阶乘的近似值,用常规方法就是TLE,虽然我避开求阶乘,用为完成的中间值做为判断条件进而避免了TLE,但是这样的方法还是感觉不靠谱,经过查阅,果然有种可以近似求阶乘的东西,斯特林公式。()斯特林公式(Stirling's approximation)是一条用来取n的阶乘的近似值的数学公式。一般来说,当n很大的时候,n阶乘的计算量十分大,所以原创 2013-12-24 01:02:29 · 3270 阅读 · 1 评论 -
CodeBlocks调试整理
随着写的代码越来越复杂,一次AC便成了一种奢望,今天CB下断点调试什么的都不熟悉实在说不过去,于是各种百度学习试验,写个小总结。先说一下几个常用键F4-运行到光标处 F5- 断点切换 F8-开始调试 F7单步执行,Shift-F7跳进函数体·单步执行这是最常用的功能了,首先是Shift-F7跳进函数体,然后就可以单步执行了,每按一次F7便进入下一行代码的执行。·设置断点在没原创 2013-12-08 19:56:04 · 3288 阅读 · 0 评论 -
让你不再害怕指针
看着这么多小伙伴们回避指针,虽然已经掌握去不愿或者故意不使用,但是指针还是最好大量去使用的,省的在使用更高级的数据结构的时候反被指针的优点——灵活所困扰。在学C的时候,听过很多类似“指针是C的灵魂”,“学精指针是学通C的标志”等等的话,未学指针便被指针吓到了,记得刚学指针的时候,即被它的灵活震惊,也意识到灵活注定带来危险,因此在写代码的时候避开写指针。暑假在和其他同C爱好者聊天的时候提起了转载 2013-12-09 10:51:54 · 880 阅读 · 1 评论 -
比赛调试利器-freopen
功能: 替换一个流,或者说重新分配文件指针,实现重定向。如果stream流已经打开,则先关闭该流。如果该流已经定向,则freopen将会清除该定向。此函数一般用于将一个指定的文件打开一个预定义的流:标准输入、标准输出或者标准出错。用 法: FILE *freopen(const char *filename,const char *type, FILE *stream);头文件:s原创 2013-11-30 23:49:45 · 765 阅读 · 0 评论 -
月球美容计划之最短路
月球美容计划之最短路,包含迪杰斯特拉,贝尔曼福特,弗洛伊德,SPFA对HDU2544的代码原创 2014-05-31 21:07:52 · 1634 阅读 · 0 评论