随笔分类 -  搜索

摘要:贪心 A Nicholas and Permutation 模拟+DFSB Pyramid of Glasses 设酒杯满了值为1.0,每一次暴力传递下去 尺取法(two points) C Vasya and String 从左到右维护一段连续的区间,改变次数不大于k,取最大值. BFS(方向,旋 阅读全文
posted @ 2016-05-31 14:37 Running_Time 阅读(227) 评论(0) 推荐(0)
摘要:容斥原理 A Number Sequence 题意:给出n个数,b1,b2,b3……bn,构造n个数,a1,a2,……an(ai>1),使得a1*a2*a3……an=b1*b2……bn 分析:容易想到的是将bi分解质因数,然后记录每个质因数的个数。那么题目变成:对于(每个质因数个数为m个划分到n个不 阅读全文
posted @ 2016-05-05 22:15 Running_Time 阅读(195) 评论(0) 推荐(0)
摘要:题目连接 排行榜 A和I都是签到题 按位BFS K Yet Another Multiple Problem 题意:给一些可以用的数字,求最小的数,它由特定的数字组成且是n的倍数 分析:暴力枚举不可行,因为数字可能非常大。考虑到大数取模为0,BFS每一层即数位,递归输出路径。 同类型的题目: URA 阅读全文
posted @ 2016-04-19 17:29 Running_Time 阅读(203) 评论(0) 推荐(0)
摘要:组合 1001 LCP Array 第一题就小难,出题的好像是浙大的大牛? 找到一个规律:a[i] = x, s[i..i+x]都想同。a[i] = a[i+1] + 1 (a[i] > 0),否则就是与后一个颜色不同,方案*25。第一次颜色相同的26种方案。 最短路 1002 Shortest P 阅读全文
posted @ 2016-03-17 15:43 Running_Time 阅读(188) 评论(0) 推荐(0)
摘要:题目传送门 题意:从炮台射出一个球,三个及以上颜色相同的会掉落,问最后会掉落多少个球 分析:先从炮台找一个连通块,然后与顶部连接的连通块都不会掉落,剩下的就是炮台射出后跟随掉落的。 阅读全文
posted @ 2016-03-17 12:33 Running_Time 阅读(306) 评论(0) 推荐(0)
摘要:暴力 A - Ebony and Ivory import java.util.*; import java.io.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner (n 阅读全文
posted @ 2016-02-29 16:25 Running_Time 阅读(275) 评论(1) 推荐(0)
摘要:后面的题目补不懂了 暴力 1001 Clarke and chemistry 这题也把我搞死了。。枚举系数判断就行了 #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> #include <map> i 阅读全文
posted @ 2016-02-17 19:51 Running_Time 阅读(243) 评论(0) 推荐(0)
摘要:题目传送门题意:题意坑爹。问符合条件的的山顶个数分析:降序排序后从每个点出发,假设为山顶,如果四周的点的高度>h - d那么可以走,如果走到已经走过的点且染色信息(山顶高度)不匹配那么就不是山顶。重点在于就算知道不是山顶也要染色完。#include using namespace std;const... 阅读全文
posted @ 2016-01-14 21:30 Running_Time 阅读(397) 评论(0) 推荐(0)
摘要:水 A - Two Bases 水题,但是pow的精度不高,应该是转换成long long精度丢失了干脆直接double就可以了。被hack掉了。用long long能存的下 #include <bits/stdc++.h> using namespace std; typedef long lon 阅读全文
posted @ 2015-11-25 11:48 Running_Time 阅读(336) 评论(2) 推荐(0)
摘要:题目传送门题意:一个人去救女朋友,两个人都在运动,还有鬼在"扩散",问最少几秒救到女朋友分析:开两个队列来表示两个人走过的路,一个人走到的地方另一个人已经vis了,那么就是相遇了,鬼就用曼哈顿距离判断.#include using namespace std;const int N = 8e2 + ... 阅读全文
posted @ 2015-11-24 21:32 Running_Time 阅读(303) 评论(0) 推荐(0)
摘要:题目传送门题意:一个图按照变成指定的图,问最少操作步数分析;状态转移简单,主要是在图的存储以及判重问题,原来队列里装二维数组内存也可以,判重用神奇的hash技术#include using namespace std;const int MOD = 1e6 + 7;struct Point { in... 阅读全文
posted @ 2015-11-23 22:03 Running_Time 阅读(327) 评论(0) 推荐(0)
摘要:题目传送门题意:一个人从(0, 0)逃往(n, m),地图上有朝某个方向开炮的炮台,问最少逃脱步数分析:主要在状态是否OK,当t时刻走到(x,y),炮台是否刚好打中,因为只能是整数,所以用整除判断。题意不清楚,有些坑点。#include using namespace std;const int N... 阅读全文
posted @ 2015-11-23 21:58 Running_Time 阅读(203) 评论(0) 推荐(0)
摘要:题目传送门1 2题意:从无序到有序移动的方案,即最后成1 2 3 4 5 6 7 8 0分析:八数码经典问题。POJ是一次,HDOJ是多次。因为康托展开还不会,也写不了什么,HDOJ需要从最后的状态逆向搜索,这样才不会超时。判重康托展开,哈希也可。POJ//#include #include#inc... 阅读全文
posted @ 2015-11-21 20:53 Running_Time 阅读(275) 评论(0) 推荐(0)
摘要:题目传送门题意:中文题面分析:双层BFS,之前写过类似的题.总结坑点: 1.步数小于等于T都是YES 2. 传送门的另一侧还是传送门或者墙都会死 3. 走到传送门也需要一步#include using namespace std;char maze[2][11][11];int dx[4] =... 阅读全文
posted @ 2015-11-20 22:31 Running_Time 阅读(229) 评论(0) 推荐(0)
摘要:题目传送门题意:中文题面分析:直接排完序后DFS.这样的题以后不应该再写题解的.#include using namespace std;vector G[21];int ans[21];int v[3];bool vis[21];int cnt;void print() { printf ("%d... 阅读全文
posted @ 2015-11-20 22:27 Running_Time 阅读(215) 评论(0) 推荐(0)
摘要:题目传送门题意:一串数字变成另一串数字,可以单个数字转变,或者一类数字转变,问最少操作次数分析:首先一类转换比单个转换优,先枚举找出最优的映射方案,然后将零碎的操作加上。6位6进制表示map映射,比如123456,表示map[1] = 1, map[2] = 2, map[3] = 3...先预处理... 阅读全文
posted @ 2015-11-19 16:42 Running_Time 阅读(712) 评论(0) 推荐(0)
摘要:题目传送门题意:问从1到n的最短路径,同时满足花费总值小于等于k分析:深搜+剪枝,如果之前走过该点或者此时的路劲长度大于最小值就不进行搜索。/************************************************* Author :Running_Time* ... 阅读全文
posted @ 2015-11-11 11:21 Running_Time 阅读(234) 评论(0) 推荐(0)
摘要:题目传送门题意:数独问题,每行每列以及每块都有1~9的数字分析:一个一个遍历会很慢。先将0的位子用vector存起来,然后用rflag[i][num] = 1 / 0表示在第i行数字num是否出现过,其他的类似,这样在用DFS就很快了,数据问题,反着搜索会更快。。。/****************... 阅读全文
posted @ 2015-11-11 09:55 Running_Time 阅读(214) 评论(0) 推荐(0)
摘要:水A - Alena's Schedule/************************************************* Author :Running_Time* Created Time :2015/10/12 星期一 16:49:42* File Name... 阅读全文
posted @ 2015-10-13 16:21 Running_Time 阅读(220) 评论(0) 推荐(0)
摘要:题目传送门题意:从r走到a,遇到x多走一步,问最小走到a的步数分析:因为r有多个,反过来想从a走到某个r的最小步数,简单的BFS。我对这题有特殊的感情,去年刚来集训队时肉鸽推荐了这题,当时什么都不会,看个数组模拟队列的BFS看的头晕,现在看起来也不过如此,额,当年开始是从r走到a的,因为数据巨弱才过... 阅读全文
posted @ 2015-09-25 09:46 Running_Time 阅读(207) 评论(0) 推荐(0)