摘要: 随便写了写不知道对不对……2333333主要:考虑y坐标最小的点,y轴坐标相同则考虑最左边的点。则其他所有点的极角都在(0,Pi]之间,对极角从小到大排序。不妨设那个点为巨人则如果第一个点是鬼则完成配对,如果并不是鬼则,按照极角顺序从小到大检查一直到巨人数目和鬼的数目一致,然后进行下一轮递归……//... 阅读全文
posted @ 2015-02-25 14:52 寒饼干 阅读(390) 评论(1) 推荐(0) 编辑
摘要: 棋盘覆盖2^k的棋盘格子,有一个缺陷,用L形状的的拼图把棋盘覆盖。每次涂抹的时候先按照缺陷的四周涂抹……23333参考int dir[4][2] = {{0,0},{0,1},{1,0},{1,1}}; ///棋盘L形状对应的分别缺少那个格子int graph[10000][10000];void... 阅读全文
posted @ 2015-02-24 21:45 寒饼干 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 归并排序:(nlog(n) 小->大)1.将数组分成两部分2.将两部分分别排序3.将排完序的两部分合为一部分void merge_sort(int x,int y){ if(y-x = y || (p = y || (p = y) return; int k = a[x];... 阅读全文
posted @ 2015-02-24 13:26 寒饼干 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 如果求连续的乘积和就要考虑负数相乘和0的情况……!连续乘积子序列最大mi[1] = mx[1] = a[1]; for(int i = 2;i #include #include #include #include #include #include #include #include... 阅读全文
posted @ 2015-02-24 11:45 寒饼干 阅读(181) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const int INF = 0xffff... 阅读全文
posted @ 2015-02-17 22:12 寒饼干 阅读(174) 评论(0) 推荐(0) 编辑
摘要: uva1343原作者题目题意是:给你的棋盘,在A-H方向上可以拨动,问你最少拨动几次可以是中心图案的数字一致解题思路:回溯法,剪枝其中要把每次拨动的字母所代表的位置提前用数组表示;然后在如果step+h()>maxd表示剪枝。总之,用数组那里表示真的好棒,自己太残了……!!!#include #in... 阅读全文
posted @ 2015-02-17 15:40 寒饼干 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 非原创!!!原作者地址:http://www.hardbird.net/?p=238 阅读全文
posted @ 2015-02-17 12:40 寒饼干 阅读(99) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2015-02-17 11:51 寒饼干 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 紫皮书的例题照着敲了一遍,非原创大题思路主要是三杯水,而水的总数是知道的,相当于知道第一第二杯水的体积,第三杯水的体积也就确定了。用第一第二杯水的体积来标记数组是否遍历过优先队列来找移动体积最少的主要update_ans()函数进行每次判断void update_ans(Node & u){ ... 阅读全文
posted @ 2015-02-14 14:40 寒饼干 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 一开始哈希表那部分死活看不懂……就是你找到head[]数组标记的每个哈希数最开始的坐标。然后 next[]数组标记的是相同的哈希数的一条链……主要代码……bool try_to_insert(int s){ int h = hash(st[s]); /*相对应的哈希数*/ int u =... 阅读全文
posted @ 2015-02-14 12:16 寒饼干 阅读(263) 评论(0) 推荐(1) 编辑