摘要:
1 //生成1~n的排列,按字典序由小到大排列 2 void print_permutation(int n,int* A,int cur) 3 { 4 if(cur==n){ //递归边界 5 for(int i=0;i<n;++i) printf("%d",A[i]); 6 printf("\n 阅读全文
摘要:
思路其实挺简单的,为什么我想不到呢!!! 原因分析:(1)题目还是做少了 (2)做题目的时候在放音乐 (3)最近脑袋都不愿意想思路总是想一些无用的 改进:(1)以后做题目坚决不开音乐,QQ直接挂隐身 (2)想题目的时候一定要认真,开启完全状态 (3)对自己再认真一点,加油 1 #include<cs 阅读全文
摘要:
题意:模拟国际象棋中马的走棋方式,其实和中国象棋的马走的方式其实是一样的,马可以从给定的方格棋盘中任意点开始,问是否能遍历全部格子,能的话输出字典序最小的走棋方式,否则输出impossible 思路:只要能遍历全部的格子,就一定会走A1这个点,而且这个点的字典序是最小的,保证了这点的话还需要保证df 阅读全文
摘要:
广搜与深搜的小区别 一般来说,广搜常用于找单一的最短路线,或者是规模小的路径搜索,它的特点是"搜到就是最优解", 而深搜用于找多个解或者是"步数已知(好比3步就必需达到前提)"的标题,它的空间效率高,然则找到的不必定是最优解,必需记实并完成全数搜索,故一般情况下,深搜需要很是高效的剪枝(优化). 像 阅读全文
摘要:
现在水平真的不够、只能够做做水题 A. Slime Combining 题意:就是给n个1给你、两个相同的数可以合并成一个数,比如说有两个相同的v,合并后的值就是v+1 思路:直接模拟栈 1 #include<iostream> 2 #include<algorithm> 3 #include<st 阅读全文
摘要:
题意:求n到k的最小路径, n有三种变法 n+1,n-1或者2*n; 贴个广搜的模版在这里把.... 总结一下:一般涉及到求最短路的话用宽搜 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<queue> 阅读全文
摘要:
算法介绍: Nim游戏是指两个对手在m个堆中轮流随意从某一个堆中拿出n个元素,假定两个对手都是足够聪明,直至最后一次取的人将所有元素取出,此人取得胜利。与之相反的是Misere游戏,相同的游戏规则,但是最后一次取的人将落败。 为了解决这个问题,有一个叫做nim-sum的方法加以解决,这个方法是这样的 阅读全文
摘要:
最近状态都不好,做题都想半天 A. Wet Shark and Odd and Even 题意:给你n个数,求n个数最大和且要被2整除 思路:偶数+偶数=偶数 奇数+奇数=偶数 奇数+偶数=奇数,所以只要是偶数就加上,奇数的话先存到数组里面去,然后对奇数数组排序,偶数个就全部加上,奇数个的话就去掉第 阅读全文
摘要:
想了两天- - 、 最近才看懂,只要是PN图不知道是什么东西,理解力太差 http://www.tuicool.com/articles/JFJZ3i 这个介绍的很详细、 PN图的由来也推了出来 原来航点上的课件也有PN图推导的由来、 概念:必败点和必胜点(P点 & N点) 必败点(P点) :前一个 阅读全文
摘要:
题意:一个盒子有36个格子、每个格子可以装64个物品,搬运一个箱子是一次搬运,问最少到搬运次数 思路:直接求总需要多少个格子,然后去求盒子,这里求盒子呢有个小技巧,就是用ceil函数 1 #include<iostream> 2 #include<cmath> 3 #include<cstring> 阅读全文