ACM搜素
Ordinary_yfz
知乎个人主页zhihu.com/people/zyf-98-4,现在涉及CV,transfer learning,unsupervised,GAN,REID,OOL很多研究方向,会经常写一些综述/论文阅读笔记。
展开
-
POJ 1022 Packing Unit 4D Cubes【题解报告|4D纸老虎】
题目链接题目大意:这个题不算难,关键就是题意不好懂。这里我不介绍背景,从输入数据入手分析题意。1.第一行表示样例数目。每个样例的第一行整数n表示样例中含有的物体数目,其后n行描述n个物体。2.描述一个物体用一行,一行包含9个整数。第一个表示该物体的编号(相当于名字)。剩下的8个数字2个一组,共四组。3.每一组数字表示该物体在一个方向上的前后邻居情况。(如果一个物体是二维平面的,我们认为它有x,y两个坐标轴方向。如果物体是三维的,我们认为它有x,y,z三个方向。本题中物体是四位的,用x,y,z,k.转载 2020-07-04 20:59:35 · 276 阅读 · 0 评论 -
POJ1227 RoboContest【题解报告|BFS】
题目链接题目大意题目给定一个无向图,节点上放置有机器人,要求每一个回合机器人都要往相邻的节点走一步,问是否存在有一个节点,使得所有机器人在某一步中能够在此节点相会思路分析对于一个无向图而言,如果我们能在第kkk到达节点nnn,那么我们可以在他和相邻节点来回穿梭,即k+2,k+4,k+6,...k+2,k+4,k+6,...k+2,k+4,k+6,...这些时刻我们都可以到达这个节点。也就是说,在这道题中,我们在意的其实不是走多少步,而是步长的奇偶性。需要注意的是,有些节点不管是奇数还是偶数都能到达转载 2020-07-04 10:53:18 · 212 阅读 · 0 评论 -
POJ 2046 Gap【题解报告|BFS&hash判重】
题目链接题目大意4*8的方格有28个数字,按照给定的规则移动,现在要你从初始状态移动到终结状态,问你最少几步.思路分析依然是BFS,且每个状态需要的元素很多。所以用dist[][][][][]…[]这种形式空间不足,所以需要用hash判重且保存所有出现过的状态。首先我们每个状态要用一个32位的char数组s保存32个方格中的每个数字,然后我们用e[4]数组保存32个方格中(有4个0)4个0的位置分别是多少,并且用p[48]保存XY(11<=XY<=47)这个数字在s数组中的位置.用di转载 2020-07-03 09:17:10 · 258 阅读 · 0 评论 -
POJ 2362 Square【题解报告|定序DFS】
题目链接题目大意给你M根长度可能不同的棍子,问你用着M根棍子能否拼成一个正方形.思路分析首先将M根棍子的总长sum求出,sum%4必须==0且任意一个棍子的长度<=sum/4.用vis[i]数组表示当前第i根棍子是否被使用了.然后用dfs来判断能否构成正方形的四边即可.其中bool dfs(int num, int len, int j)表示当前正在构造第num根棍子且当前棍子已经凑到了len的长度,下一次从第j个木棍开始搜索。这里注意网上很多解法都是对棍子排序了的,其实不用排序也行.因转载 2020-06-29 21:39:34 · 261 阅读 · 0 评论 -
POJ 1426 Find The Multiple【题解报告|DFS|BFS|模运算】
题目大意给出一个整数n(1<=n<=200)n (1 <= n <= 200)n(1<=n<=200)。求出任意一个它的倍数m,要求m必须只由十进制的 0 或 1 组成。思路分析首先暴力枚举肯定是不可能的 1000ms 想不超时都难,而且枚举还要解决大数问题。解题方法: BFS|DFS+同余模定理我以 n=6n=6n=6 为例首先十进制数,开头第一个数字(最高位)一定不能为0,即最高位必为 1设6的 “01十进制倍数” 为k,那么必有 k%6=0k\%6转载 2020-06-28 21:11:27 · 235 阅读 · 0 评论 -
POJ 1416 Shredding Compan【题解报告|DFS-0MS】
题目链接题目大意公司现在要发明一种新的碎纸机,要求新的碎纸机能够把纸条上的数字切成最接近而不超过target值。比如,target的值是50,而纸条上的数字是12346,应该把数字切成四部分,分别是1、2、34、6。因为这样所得到的和 43 (= 1 + 2 + 34 + 6) 是所有可能中最接近而不超过50的。(比如1, 23, 4, 和6 就不可以,因为它们的和不如43接近50,而12, 34, 6也不可以,因为它们的和超过50了。碎纸还有以下三个要求:如果target的值等于纸条上的值,则不.原创 2020-06-28 10:39:21 · 162 阅读 · 0 评论 -
POJ 2635 The Embarrassed Cryptographer【题解报告|高精度取模,素数筛法】
问题描述给定一个大数K,K是两个大素数的乘积的值。再给定一个int内的数L问这两个大素数中最小的一个是否小于L,如果小于则输出这个素数。解题思路首先对题目的插图表示无语。。。高精度求模+同余模定理,解题步骤:1、 Char格式读入K。把K转成千进制Kt,同时变为int型。把数字往大进制转换能够加快运算效率。若用十进制则耗费很多时间,会TLE。千进制的性质与十进制相似。例如,把 K=1234567890K=1234567890K=1234567890 转成千进制,就变成了: Kt=[1][转载 2020-06-27 21:59:47 · 359 阅读 · 0 评论 -
Poj 1708 Game【题解报告|启发式DFS】
题目链接题目大意给出N个点(不超过100个),每个点有一个颜色(颜色标号不超过100),有一些点的颜色可以相同。给出M条有向边,这些边也有一个颜色。给出两个棋子的初始点L,K,终点Q,问两个棋子中的任意一个是否可以移动到Q,如果可以,输出移动的最小步数。移动时遵循以下规则:1.一个棋子可以移动到下一个点需要满足:经过的边的颜色与另一个棋子所在点的颜色相同;2.只能沿着有向边的方向;3.两个棋子不能同时移动到同一个点;4.移动次序任意,没有必要交替进行;5.其中一个棋子到达Q点时游戏结束。思路原创 2020-06-26 17:49:03 · 211 阅读 · 0 评论 -
Poj 1190 生日蛋糕【题解报告|DFS极限剪枝】
题目链接题目大意7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体。设从下往上数第i(1 <= i <= M)层蛋糕是半径为Ri, 高度为Hi的圆柱。当i < M时,要求Ri > Ri+1且Hi > Hi+1。由于要在蛋糕上抹奶油,为尽可能节约经费,我们希望蛋糕外表面(最下一层的下底面除外)的面积Q最小。令Q = Sπ请编程对给出的N和M,找出蛋糕的制作方案(适当的Ri和Hi的值),使S最小。(除Q外,以上所有数据原创 2020-06-26 15:13:05 · 442 阅读 · 0 评论 -
POJ 1167 The Buses (DFS·剪枝·公交时刻表)
题目链接题意 你记录了[0, 59]这个时间段内到达你所在站牌的所有公交的到这个站牌的时间 对于每路公交同一路公交的到站时间间隔是相同的每路公交在这个时间段至少到达两次最多有17路公交两个不同路的公交的第一次到站时间和到站时间间隔都可能是相同滴你在这个时间段内的记录是完整的求最少用多少路公交可以让你的记录合法,等价于在给出的200多个序列中,看看最少有多少个等差数列能完全覆盖所有的值,由于每路公交至少到站两次 那么第一次到站时间是肯定小于30的 而且到站时间.转载 2020-06-22 11:13:05 · 295 阅读 · 0 评论 -
2253 Frogger[二分+dfs/bfs]:青蛙寻偶-最小最长路:0msAC
题目大意一只青蛙在湖中1号石头上, 它想去2石头号上去找另外一只青蛙,但是 湖里的水很脏,它不愿意游泳,所以它要跳过去;给出 两只青蛙所在石头的坐标, 及湖里其他石头的坐标;任一两个坐标点间都是双向连通的。显然从A到B存在至少一条的通路,每一条通路的元素都是这条通路中前后两个点的距离,这些距离中又有一个最大距离。现在要求求出所有通路的最大距离,并把这些最大距离作比较,把最小的一个最大距离作为...原创 2020-04-15 21:52:33 · 154 阅读 · 0 评论 -
九宫格数独:搜索与剪枝
题目大意把一个9行9列的网格,再细分为9个3*3的子网格,要求每行、每列、每个子网格内都只能使用一次1~9中的一个数字,即每行、每列、每个子网格内都不允许出现相同的数字。0是待填位置,其他均为已填入的数字。要求填完九宫格并输出(如果有多种结果,则只需输出其中一种)如果给定的九宫格无法按要求填出来,则输出原来所输入的未填的九宫格思路分析格子里面放符号/数字的问题一般都可以search(...原创 2020-04-11 10:22:11 · 568 阅读 · 0 评论 -
1915:Knight Moves:已知始末状态的马步棋盘问题,双向bfs效率KO
题目大意索莫罗洛夫先生确实是一位出色的国际象棋游戏者,他断言,除了他以外,没有其他人可以将骑士从一个位置如此快速地移动到另一个位置。 你能打败他吗?问题您的任务是编写一个程序,计算一个骑士从一个点到另一个点所需的最少移动次数,这样您就有机会比Somurolov更快。对于不熟悉国际象棋的人,可能的骑士动作如图1所示。思路分析对这种走马步的问题,一般都是搜素,最难不过八数码,这道题已知起...原创 2020-04-06 11:03:01 · 373 阅读 · 0 评论 -
2386:Lake Counting:为社么是判断联通块?dfs+bfs
题目大意题目链接由于近期的降雨,雨水汇集在农民约翰的田地不同的地方。我们用一个NxM(1<=N<=100;1<=M<=100)网格图表示。每个网格中有水(‘W’) 或是旱地(’.’)。一个网格与其周围的八个网格相连,而一组相连的网格视为一个水坑。约翰想弄清楚他的田地已经形成了多少水坑。给出约翰田地的示意图,确定当中有多少水坑。思路分析注意一个水坑的八个方向如果有水坑...原创 2020-04-06 09:43:31 · 155 阅读 · 0 评论 -
2488:A Knight's Journey:马步遍历,简单而巧妙地解决字典序问题
题目大意骑士厌倦了一次又一次看到相同的黑白方块,并决定踏上旅途世界各地。 每当骑士移动时,它在一个方向上是两个正方形,而垂直于该方向的正方形是一个正方形。 骑士的世界就是他赖以生存的棋盘。 我们的骑士生活在棋盘上,棋盘的面积比普通的8 * 8棋盘小,但它仍然是矩形的。 您可以帮助这个冒险的骑士制定旅行计划吗?问题找到一条让骑士访问每个广场一次的路径。 骑士可以在棋盘的任何正方形上开始和结...原创 2020-04-05 19:36:15 · 740 阅读 · 3 评论 -
1077 Eight:八数码问题变形:从bfs到双向bfs+hash到A*启发式搜索的进化史
题目大意添加链接描述在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用x来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了使题目简单,设目标状态为12345678x),找到一种移动方法,实现从初始布局到目标布局的转变。如果不行输出unsolved。思路分析八数码问题的变化版,八数码的三种解法,无非是多了...原创 2020-04-04 12:43:32 · 463 阅读 · 0 评论 -
1321:棋盘问题:揭开dfs的神秘面纱+一些常错的点
题目大意在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k <= n当为-...原创 2020-04-03 20:10:43 · 217 阅读 · 0 评论 -
1979:Red and Black:经典地图遍历,dfs强行跑图+坑点分析
题目大意有一个长方形的房间,覆盖着正方形的瓷砖。 每个磁贴都被着色为红色或黑色。 一个人站在黑色的瓷砖上。 他可以从一个图块移动到四个相邻图块之一。 但是他不能在红色瓷砖上移动,只能在黑色瓷砖上移动。编写一个程序,通过重复上述动作来计算他可以到达的黑色瓷砖的数量。输入输入包含多个数据集。 数据集从包含两个正整数W和H的行开始; W和H分别是x和y方向上的图块数。 W和H不超过20。数据集...原创 2020-03-31 13:36:04 · 214 阅读 · 0 评论 -
Poj 1011:sticks通俗易懂 大法师+强力剪枝
题目描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过5050。现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度。给出每段小木棍的长度,编程帮他找出原始木棍的最小可能长度。输入格式共二行。第一行为一个单独的整数N表示砍过以后的小木棍的总数,其中N≤65N≤65(管理员注:要把超过5050的长度自觉过滤掉,坑了很多人了!)第...原创 2020-03-12 09:10:20 · 371 阅读 · 0 评论