搜索
搜索学习
快乐撸代码
一个今天胜过两个明天
展开
-
使用c++标准库中 next_permutation(start_address,end_address) 排列组合
排列组合 /* 使用c++标准库中的 next_permutation 枚举 */ #include<stdio.h> #include<iostream> #include<algorithm>//使用该头文件 using namespace std; int main() { int a[10],n; scanf("%d",&n); for(int i=1;i<=n;i++){ a[i]=i; } do{ for(int原创 2020-11-17 09:16:32 · 187 阅读 · 0 评论 -
foj 2150 Fire Games 双向广搜
foj 2150 Fire Games 双向广搜 题意 有一块 n*m 的地,‘ # ’ 代表草地,‘ . ’ 代表空地;两个人任意分别选取一个点开始点火(两个人选的点可重合),只有草地能着火,并且上下左右如果有草地的话可以蔓延。从一块草地烧到另一块草地的时间为 1 ,问:这块地草地完全着火的最短时间是多少? 注意 草地虽然着火,但是并不损坏——意思就是某块草地烧着以后,其他地方的火还可以从这里蔓延经过。 题目双向广搜的意思是从两个点同时开始广搜 思路 首先 BFS 深搜判断这块地是否有不大于两个的连原创 2020-08-13 20:24:21 · 150 阅读 · 0 评论 -
POJ-3134-Power Calculus(迭代加深)
题意:输入一个n,问x从1次方开始,到n次方 ,可以乘或除已经计算出来的数 ,最少需要执行多少步? 思路:迭代加深 ,深度从0开始 ,直到返回值为真。 在深搜过程中剪枝(深度的判断 ,当前最大值尽全力是否能到达 n ) 代码: /*迭代加深*/ #include<stdlib.h> #include<stdio.h> #include<string.h&g...原创 2020-03-13 20:42:18 · 310 阅读 · 0 评论