摘要:这题做得相当曲折,一开始以为是和8皇后差不多,于是按8皇后解法做,后来发现自己列出所有的路线,错了 修改后,发现超时了,后来改了好几次都超时了, 看了大牛的解题报告,才知道要剪枝 先搜索扩展点最小的点, 因为它的扩展点小,就意味着从其它点到达它的路径很少,先搜索它会提高效率 这是我个人的理解 1152和1153都差不多,只不过1153数据规模比1152数据规模大 1152
阅读全文
摘要:水题,看明白题目就可以了。 题意是,控制一个机器人行动,s,r,l为控制机器人操作 给一个函数,先按它给的定义计算出该函数,然后解析该字符串
阅读全文
摘要:题意是,给出A~Z字母的个数,计算它们能组成单词的价值<=50的个数 也是母函数模板,判断时添加了一个最大值
阅读全文
摘要:这题大概意思是,给你n个砝码和一个天平,叫你找出从1 到 这n个砝码总和的范围内,找出不能称出的重量 可以套用母函数模板, 多项式相乘时,多了负指数。注意这题只是存在性,不需要求出每种重量的组合数, 直接标记就可以了。 还有一点需要注意,乘出来的多项式,负指数和正指数是相互对称的,只存其中一边即可
阅读全文
摘要:一开始WA了好几次,搞不懂原因, 后来发现原来我忽略了,不能最小的不能组合数 可以大于所有1,2,5的总和
阅读全文
摘要:这题是 8皇后加墙版~ 现在我貌似回溯算法,都认为是dfs了~因为他们写起来框架都基本一样 这题卡了很久,尽管参照了8皇后解法,写的极其繁琐 主要是,分类讨论, 当一个blockhouse放到矩阵里,它所在的行列都标记, 然后再讨论,下一个要放的点,有4种情况(1行标记,列没标记 2 列标记,行没标记, 3 行列都标记了 4 行列都没标记)对这4种情况分别处理 后来,在网上看了别人的解题报告...
阅读全文
摘要:今天数据结构实验课,老师给了一道题,说100分能用多少个1分,2分,5分组成,列出所有可能 原本3个for就可以强搜索完, 最近由于搜索题做多了,上来直接想到用dfs做,后来写好了发现问题了 dfs用于储存数据的数组,大小至少要把所有数据都能存进去,这题大小为100+50+20,但是仔细想会发现,答案最多不过为100个,开始我就把数组设为100个,运行起来爆了,调试,发现数组越界,就发现这个原...
阅读全文
摘要:三维迷宫 bfs注意输入,先输入 col, row,slice, 即这样输入y, x ,z,y在x前面,开始没注意到WA一次Asteroids!
阅读全文
摘要:生成不重复排列类似DFS这题卡在排序上了,后来看了别人的解题报告,受到启发重写了排序算法,才AC掉主要是排序不是按ASCII码排的思路是先判断是否同一个字母大小写,如果是,就直接判断大小,因为原来的ASC码 大写字母就比小写字母小如果不是,就意味着两个是不同字母的大小写,都化成小写,再比较大小别人都是用stl里的next_permutation和sort函数我是完全自己写Anagram
阅读全文
摘要:刚看到题目时,觉得题目不难,感觉就一个bfs,只不过多了guard这个判断结果WA了无数次, 想不出原因,后来查看别人解题报告,才发现自己处理那个guard时候出错了,尽管写程序我已经留意这个问题,主要原因是自己思路错了。刚开始思路是,在坐标改变时判断遇到guard就直接step 再加个1, 再插入队列。这个是致命错误。原因会抢占原属于最短路径的某些地格,导致计算出来最小值偏大。看了别人解题报告后...
阅读全文
摘要:这两题典型是用dfs , bfs的迷宫题,两题都大同小异这两题两种方法都可以做出来,随便熟练一下刚学的bfs , dfs算法POJ 3752走迷宫POJ 2790 迷宫
阅读全文
摘要:这几天学,BFS和DFS算法,参照网上找的程序,对照着写的。所有的排列组合问题,基本是基于DFS算法的思路而来的Sum It Up
阅读全文
摘要:这题想了很久才想出一个做法在纸上乱写着写着,就出来了自己也不知道为什么对2^x mod n = 1之后在网上找找别人是如何做的,受到启发,重写了一个主要用到一个公式 (m*n)%d =( m%d * n%d ) %d2^x mod n = 1
阅读全文
摘要:简单题,不说注意输出后面有. WA了好几次,细节啊细节Blowing Fuses
阅读全文
摘要:第一次写DFS,这题不难,基本照着今早找到那个程序的思路敲出来的,但是搞了好久才AC掉, 一开始就超时, 到后来就WA,纳闷了很久DFS主要就是有个flag数组,储存所有可能状态,标记是否查找过设定好操作集,对数据进行的操作一般思路就是开始有一个Queue, 对现在的每一个状态的所有可能不断地push进队列, 再检查, 直到找到答案经验:C++里面那个string对象作为参数传入时,不是引用的,而...
阅读全文
摘要:昨晚自己写了一个递归回溯算法,结果爆栈了, 今早参考了书本的单源最短路径算法,过了~~感觉过的有些勉强,那个每个点都记录自己的路径信息,感觉太费空间,费劲不讨好昨晚写代码时,一些错误:定义一个struct里面不能包含自己的struct,即不能自己包含自己,只能用指向自己指针,再动态分配把一个二维数组当参数传入函数时, 函数的参数不能是 **指针的指针,受一维数组的影响(一维数组传入,函数函数可以是...
阅读全文
摘要:简单题开个数组一下过了,貌似觉得不合符题目要求,题目要求是尽可能小的空间和时间,想不到有啥好方法代码
阅读全文
摘要:总结一题简单题都卡了好久,一开始直接开数组做,一下过了,后来觉得不合题目要求,改用链表,顺带熟悉一下指针操作, 果然一下杯具, 调了很久才出来。用链表方法,一开始我打算不记录ptr前一个节点,直接检查ptr后一个节点的值,后来发现不行,还是用一个pre,结果发现这样更加简单。还有一个要注意的是头节点,要开始就记录不是删除数的头节点,一开始忽略了,导致WA附上两种方法代码[代码]
阅读全文
摘要:是纯C写的下午把数据结构上的后缀式求值程序敲了敲,发现怎么计算答案都是-48, 调试了一下,发现就是在结尾那时,书本以‘ ’空格来作结尾,以用C语言的scanf,gets来读取字符串是以‘\0’结尾的。导致运算错误。后缀式求值主要是用栈的知识收获:scanf :当遇到回车,空格和tab键会自动在字符串后面添加'\0',但是回车,空格和tab键仍会留在...
阅读全文