随笔分类 - 搜索
摘要:题目链接:https://vjudge.net/problem/POJ-1426 题目:给定一个n,求一个由0 1组成的十进制数x,x是n的倍数。 思路:bfs枚举每一种01串组成情况,对上一些情况,只需要末尾加0或者1去枚举下一些情况 1 #include<stdio.h> 2 #include<
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-3085 题意:有两个鬼和两个人和墙,鬼先走,人再走,鬼每走过的地方都会复制一个新鬼, 但新鬼只能等待旧鬼走完一次行程之后,下一次旧鬼再次开始新的行程时旧鬼才能移动, 旧鬼一个行程能走最多两步,M能走三步,G能走一步。 问M和G
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-3533 题目分析: 1.人不能经过碉堡; 2.敌军碉堡可能建到我军基地 3.子弹碰到碉堡就没了,说明子弹会被别的城堡给拦截下来,不能透过其他城堡,导致攻击距离减小,这里预处理时要注意 4.人拥有的能量相当于最大时间 5.人可以
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-2181 题意:一个规则的实心十二面体,它的 20个顶点标出世界著名的20个城市,你从一个城市出发经过每个城市刚好一次后回到出发的城市。 思路:dfs和回溯,算一个基础题吧,这里需要邻接矩阵,用bool就可以,也可以用vecto
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-2612 题意:‘@’表示KTV,‘#’表示无法走的地方,‘Y’,'M’表示两个人,他们要在KTV见面,问他们都到达KTV要花费的时间之和。 思路:两个bfs,一个从‘M’开始,一个从‘Y’开始,跑完之后,遍历地图,找出所有KT
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-1495 题意:有两个空杯(分别是N升和M升)和一罐满的可乐S升,S = N + M,三个容器可以互相倾倒,如果A倒入B,只有两种情况:(1) A全部倒入B中,B中的升数小于等于B的最大容量。(2)A部分倒入B中,B已经到达了B
阅读全文
摘要:题目链接:https://vjudge.net/problem/HDU-1241 题意:问有几个油田,一个油田由相邻的‘@’,组成。 思路:bfs,dfs都可以,只需要遍历地图,遇到‘@’,跑一遍搜索,标记跑过的点,然后油田数+1.
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-3984 这个题目,emm,上代码,看的估计应该是刚开始接触搜索的,我带点注释,你能慢慢理解。
阅读全文
摘要:题目链接:https://vjudge.net/problem/UVA-11624 题意:一个迷宫,可能有一个或者多个地方着火了,每过1个时间消耗,火会向四周蔓延,问Joe能不能逃出迷宫,只要走出迷宫边界就算逃出,火和Joe都不能透过墙。 思路:人和火源分别跑bfs,人一张地图,火源一张地图,跑各自
阅读全文
摘要:题目链接:https://vjudge.net/problem/FZU-2150 题意:’ . '代表火无法烧着的地方,‘ # ’表示草,火可以烧着。选择任意两个‘ # ’(可以两个都选同一个 ‘ # ’),火会蔓延,每过1个时间消耗,向四周蔓延。问:能不能把草全部烧完,可以的话得出最短时间,否则输
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-3414 题意:给你两个杯子,分别容量为A(1),B(2)和一个C,C是需要经过下列操作,得到的一个升数。(1) FILL(i) :把编号为i的杯子中水灌满(2)DROP(i):把编号为i的杯子中水全部倒了(3)POUR(i,j
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-3279 题意:格子有两面,1表示黑色格子,0表示白色格子,奶牛每次可以踩一个格子,踩到的格子和它周围的上下左右格子都会翻面,也即是颜色改变,问:能不能踩有限个格子,使得所有格子都变成白色,如果能,求踩格子次数的方案,并且要求字
阅读全文
摘要:题意:(1)有两副颜色多样的扑克牌,(A~H)表示不同颜色,给你两副牌,S1,S2和一副你需要洗出的KEY,S12由S2最底部,S1底部。。。一直下去,直到洗成S12,就是图片展示的那样。(2)洗好的S12可以重新变成新的S1,S2,S1是从下取S12牌数的一半,S2的从上取S12牌数的一半,问:这
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-3126 题意:给你两个四位的素数N,M,每次改变N四位数中的其中一位,如果能经过有限次数的替换变成四位数M,那么求出最少替换次数,否则输出“Impossible”.(N,M必须一直是素数) 思路:bfs。四位数,每一位可以替换
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-3278 题意:人可以左移动一格,右移动一格,或者移动到当前位置两倍下标的格子 思路:把题意的三种情况跑bfs,第一个到达目的地的时间最短。 1 #include <iostream> 2 #include <string.h>
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-2251 题意:简单的三维地图 思路:直接上代码。。。
阅读全文
摘要:题目链接:https://vjudge.net/problem/POJ-1321 题意:给一张棋盘,‘#’表示可以下棋的地方,‘.’表示不能下棋的地方。棋盘是n*n的,要求能放下k个棋子,要求k个棋子在不同行不同列 思路:dfs,首先遍历地图找到第一个可以下棋的地方,然后从下一行开始继续dfs,如果
阅读全文

浙公网安备 33010602011771号