经过这次个人项目,我有很多收获。不光有编程技巧方面的收获,在软件工程的思想方法上也学到了很多。下面总结一下。 自我评价 总体来说,我觉得这次我完成得还算可以,不仅达到了基本要求,还实现了随机生成表达式的功能并添加了图形用户界面。当然不足之处也有很多,比如没有很好地解决判重问题。 收获体会 通过这个项
分类:
其他好文 时间:
2016-03-20 15:50:06
阅读次数:
195
解题思路: 1.简单分析我们可以发现,当n=9时,最多只需要剪切八次即可完成排序。并且全排列数量9!=362880不算很大,所以我们可以将当前排列作为状态,转化成十进制数存入set以便判重。然后逐渐增加解答树的深度(搜索最大深度)进行迭代加深搜索。 2.构造启发函数。本题可以定义一个后继错数:当前状
分类:
其他好文 时间:
2016-03-20 13:07:13
阅读次数:
273
一.实现目标 二.软件假设的一些条件 三.设计思路 总体流程是用户先给定需求,之后程序判断需求的合法性,对于合法需求,先生成操作数,再生成运算符,判重之后合并为一个字符串输出。先对于每一项需求分类进行讨论: 四.界面设计 个人喜欢简单明了的风格,故界面仅仅只两个个五毛钱特效的窗口。初始界面具体如下图
分类:
其他好文 时间:
2016-03-13 19:49:48
阅读次数:
256
题意:就是恢复成1,2,3,4,5,6,7,8,0; 分析:暴力BFS预处理,所有路径,用康拓展开判重,O(1)打印 93ms 还是很快的 #include <iostream> #include <cstdio> #include <vector> #include <cstring> #incl
分类:
其他好文 时间:
2016-03-06 19:01:05
阅读次数:
206
介绍一下Eratosthense筛法(这里是素数表的打法) 对于不超过n的每个非负数P删除2*p,3*p.....,当处理完所有的剩下的就是素数了,优化方案之一是判重,二是开平方和平方。首先解释为什么要平方,因为假设i是大于2的,那么i之前的2i,3i,4i什么的都已经被2倍3倍的筛掉了,所以要平方
分类:
其他好文 时间:
2016-03-03 20:59:00
阅读次数:
178
题目链接 AC自动机 由于输入的是恶心的数字,用了map强行带log…… 由于不清楚长度,用了vector强行增加时间…… 由于要判重,用了数组存下强行加常数…… 慢惨了 1 #include<algorithm> 2 #include<iostream> 3 #include<cstdlib> 4
分类:
其他好文 时间:
2016-03-01 22:23:24
阅读次数:
208
虽然刷了4章usaco,但跟没有刷一样,唯一有印象的就是判大素数模版,反着做背包的dp,反着做数位dp(逆向思维),对lis统计的判重,还有连通分量有了一点大概的印象,还有更加坚信了构造就是找规律,然后提高了一下代码能力,没了。 这个寒假最失败的一点就是把白天和夜晚倒过来过,白天睡觉,晚上刷题,这样
分类:
其他好文 时间:
2016-02-22 01:36:08
阅读次数:
155
题目传送门:http://www.nocow.cn/index.php/Translate:USACO/msquare 这道题bfs+hash,但想到要判重的数字不多,就直接用了map,数组传递有些麻烦,所以直接写在了一起,会有点乱 /*ID:abc31261LANG:C++TASK:msq...
分类:
其他好文 时间:
2016-01-20 00:53:11
阅读次数:
241
题目链接给n个数, 找出三个数相加结果为0的所有的组, 不可重复。用双指针的思想,O(n^2)暴力的找, 注意判重复。 1 class Solution { 2 public: 3 vector> threeSum(vector& nums) { 4 int sz = num...
分类:
其他好文 时间:
2016-01-11 18:25:10
阅读次数:
227