搜索递归回溯
巴黎没有欧莱雅你也不值得被拥有
发现自己近来好懒,好久没沉淀芝士了
展开
-
POJ1753 flip Game翻转棋盘
/*题目大意:有一个4*4的方格,每个方格中放一粒棋子,这个棋子一面是白色,一面是黑色。 游戏规则为每次任选16颗中的一颗,把选中的这颗以及它四周的棋子一并反过来,当所有的棋子都是同一个颜色朝上时, 游戏就完成了。现在给定一个初始状态,要求输出能够完成游戏所需翻转的最小次数, 如果初始状态已经达到要求输出0。如果不可能完成游戏,输出Impossible。 Sample Inputbwwb原创 2016-08-09 18:34:42 · 1305 阅读 · 0 评论 -
NYOJ 722数独
数独 描述 数独是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个3*3宫内的数字均含1-9,不重复。 每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。 有一天hrdv碰到了一道号称是世界上最难的数独的题目,作为一名合原创 2016-08-06 20:41:33 · 988 阅读 · 0 评论 -
NYOJ 32组合数
题目32组合数时间限制:3000 ms | 内存限制:65535 KB难度:3描述找出从自然数1、2、... 、n(0<n<10)中任取r(0<r<=n)个数的所有组合。输入输入n、r。输出按特定顺序输出所有组合。特定顺序:每一个组合中的值从大到小排列,组合之间按逆字典序排列。样例输入5 3样例输出543原创 2016-08-09 13:12:45 · 423 阅读 · 0 评论 -
NYOJ 1058 部分和问题
/*部分和问题 描述 给定整数a1、a2、…….an,判断是否可以从中选出若干数,使它们的和恰好为K。 输入 首先,n和k,n表示数的个数,k表示数的和。 接着一行n个数。 (1<=n<=20,保证不超int范围) 输出 如果和恰好可以为k,输出“YES”,并按输入顺序依次输出是由哪几个数的和组成,否则“NO” 样例输入 4 13原创 2016-08-09 17:38:56 · 306 阅读 · 0 评论 -
第七届蓝桥杯_方格填数_简单搜索
填入0~9的数字。要求:连续的两个数字不能相邻。(左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。我博客里面还有一个方格填数的,那是学长给我们的第一次测试的时候给我们出的题,跟这个一样的图,只是有所修改建议参考下(点这里!嘿嘿)原创 2017-04-11 20:11:41 · 955 阅读 · 0 评论 -
八皇后问题(典型的递归回溯)
八皇后 : 这个代码只是输出一共有多少种摆放的个数。如果想要输出他摆放的不同方法 只需要在递归出口的时候用两个for循环输出棋盘即可。 目的在于每行,每列,以及对角线上都只能放置一个皇后,所以这里需要用到标记 目的在于我放置之后不能够再其对角线上这一行这一列再放。 首先定义一个10*10的二维数组, 8*8的也行,作为棋盘(全局变量的话不用传参,方便并且节省空间。#include原创 2016-09-07 20:27:49 · 7171 阅读 · 0 评论 -
方格填数
/*题目描述如上面的10个格子,填入0~9的数字,不能重复(原先已经填了一部分数字),要求:连续的两个数字不能相邻(左右,上下,对角都算相邻)。例如:数字0和1不能放在一起。 问:一共有多少种可能的填数方案?输入 输入多组测试数据。 每组测试数据有三行,第一行三个整数,第二行四个整数,第三行三个整数,之间用空格隔开,分别代表每个空格所填的数,如果原先没有数,则填-1。 输入数据保证不重复数字原创 2016-08-09 17:58:40 · 769 阅读 · 0 评论 -
哈密顿绕行世界问题
/*哈密顿绕行世界问题 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 3113 Accepted Submission(s): 1924Problem Description 一个规则的实心十二面体,它的 20个顶点标出世界著原创 2016-08-10 12:06:25 · 406 阅读 · 0 评论 -
放苹果
/*问题 D: 放苹果 时间限制: 1 Sec 内存限制: 128 MB 提交: 33 解决: 12 [提交][状态][讨论版] 题目描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。输入 第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,原创 2016-08-09 13:03:18 · 441 阅读 · 0 评论 -
poj1573_搜索(广搜和深搜)
点击打开题目链接其实深搜和广搜都一样,没有太大的差别,因为每次都是只走了一个深搜:#include#includeint book[100][100];char map[100][100];int s;int n,m,count,flag;void dfs(int c,int r){ if(book[c][r]) { flag=1;原创 2017-04-17 13:50:51 · 402 阅读 · 0 评论