题目传送门 题意:给出一个$N \times M$的棋盘,棋盘上有一些块可以移动,有一些块无法移动.$Q$次询问,每一次询问给出三个块$a,b,c$,将$a$块变为空格,空格旁边可移动的块可以与空格交换位置.问每一次询问中最小的将$b$块移动到$c$块最开始位置上的移动次数.$N , M \leq 30 , Q \leq 500$ 我觉得我在$NOIP$考场上绝对会直接打暴力qwq 我们能够发现空格必须要在需要移动的格子的四周,而且不移动需要移动的格子,才能发挥效果.所以当空格在需要移动的格子旁…
题目传送门 暴力搜索 看到这道题的第一反应就是直接上$bfs$啦,也没有想到什么更加优秀的算法. 然后就是$15$分钟打了$70$分,有点震惊,纯暴力诶,这么多白给分嘛,太划算了,这可是$D2T3$诶. #include<cstdio> #include<algorithm> #include<vector> #include<cstring> #include<queue> #include<map> #include<ios…
"Good man never makes girls wait or breaks an appointment!" said the mandarin duck father. Softly touching his little ducks' head, he told them a story. "Prince Remmarguts lives in his kingdom UDF – United Delta of Freedom. One day their ne…
题目描述 Description 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. 小 B 玩的华容道与经典的华容道游戏略有不同,游戏规则是这样的: 在一个 n*m 棋盘上有 n*m 个格子,其中有且只有一个格子是空白的,其余 n*m-1个格子上每个格子上有一个棋子,每个棋子的大小都是 1*1 的: 有些棋子是固定的,有些棋子则是可以移动的: 任何与空白的格子相邻(有公共的边)的…
搜索:https://www.cnblogs.com/SiriusRen/p/6532506.html?tdsourcetag=s_pctim_aiomsg 來自 SiriusRen 數據範圍小,考慮直接dfs,剪枝:到達此層如果用時更長就不再搜了, 然而我有一個問題就是到達每層手柄的狀態並不一樣,怎麼能直接更新呢? 然而我用二維的寫掛了,T5個點,所以先放上一維的掛著了...... #include<iostream> #include<cstdio> #include<c…
题目描述: 策策同学特别喜欢逛公园.公园可以看成一张N个点MM条边构成的有向图,且没有 自环和重边.其中1号点是公园的入口,N号点是公园的出口,每条边有一个非负权值, 代表策策经过这条边所要花的时间. 策策每天都会去逛公园,他总是从1号点进去,从N号点出来. 策策喜欢新鲜的事物,它不希望有两天逛公园的路线完全一样,同时策策还是一个 特别热爱学习的好孩子,它不希望每天在逛公园这件事上花费太多的时间.如果1号点 到N号点的最短路长为d,那么策策只会喜欢长度不超过d + K的路线. 策策同学想知道总共…
P1979 华容道 题意 题目描述 小B最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成, 最少需要多少时间. 小B玩的华容道与经典的华容道游戏略有不同,游戏规则是这样的: 在一个\(n \times m\)棋盘上有\(n \times m\)个格子,其中有且只有一个格子是空白的,其余\(n \times (m-1)\)个格子上每个格子上有一个棋子,每个棋子的大小都是\(1 \times 1\)的: 有些棋…
A Walk Through the Forest Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5679    Accepted Submission(s): 2086 Problem Description Jimmy experiences a lot of stress at work these days, especiall…
A Walk Through the Forest Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4383    Accepted Submission(s): 1573 Problem Description Jimmy experiences a lot of stress at work these days, especiall…
LOJ2613 NOIP2013 华容道 LINK 这是个好题,具体题意比较麻烦可以直接看LINK中的链接 然后考虑我们可能的移动方式 首先我们需要把白块移动到需要移动块S的附近(附近四格) 然后我们就可以考虑怎么对S进行移动 操作一:把S和白块互换位置 操作二:把白块从S的一个方向移动到另一方向(方便交换位置) 第一种操作的代价是1很显然,后一种操作我们每次移动的最小代价是可以预处理的 然后我们就可以定义状态x,y,dir表示S在(x,y)且白块在S的dir方向上 我们就只需要考虑在状态之间进…