- 博客(21)
- 资源 (2)
- 收藏
- 关注
原创 卡特兰数 - hdu1130 hdu1133
How Many Trees?题意:给定一棵n个节点的二叉树, 求这棵树有多少个二叉树。数据范围: n思路:n个节点的二叉树有多种,多种二叉树里面又有子树。当n到达100时,结果是一个庞大的数字,所以要用到大数。在卡特兰数的应用里面,求二叉树的个数是一个典型的应用,还有 合法的入栈出栈序列数、多边形分成三角形的个数、圆括弧插入公式中的方法数 都是卡特兰
2017-08-30 10:37:15 625
原创 DFS - hihoCoder#159 - 区域周长
#1319 : 区域周长 题意:给定一个N*M的矩阵,给定一个起始坐标x,y,求与(x,y)相邻且值相同的联通快的周长。每个格子边长为1。 数据范围:第一行包含4个整数 N , M ,x 和 y , N 和 M 是矩阵的大小, x 和 y 是给定的单位正方形 s 的坐标。(1 ≤ N , M ≤ 100, 0 ≤ x < N , 0 ≤ y < M )以下是一个...
2017-08-13 23:19:33 422
原创 贪心+思维策略 - codeforce 839B Game of the Rows
B. Game of the Rows 题意:座位安排如下: 12 3456 78,每行8个位置。先给定n行座位,k个团体 a1,a2....ak,不是同一个团体的人不能坐在一块。m个团体是否都能坐下? 数据范围:n and k (1 ≤ n ≤ 10000,1 ≤ k ≤ 100)a1, a2, a3, ..., ak (1 ≤ ai ≤ 10000), a1 + ...
2017-08-13 17:22:28 503
原创 蔡勒公式计算星期+枚举 - hdu6112 今夕何夕
今夕何夕 题意:接下来最近的哪一年里的同一个日子,和今天的星期数一样?比如今天是8月6日,星期日。下一个也是星期日的8月6日发生在2023年。 数据范围:第一行为T,表示输入数据组数。每组数据包含一个日期,格式为YYYY-MM-DD。1 ≤ T ≤ 10000YYYY ≥ 2017日期一定是个合法的日期,对每组数据输出答案年份,题目保证答案不会超过四位数。 ...
2017-08-12 19:41:43 1093
原创 数学规律题 - 百度之星1001 小C的倍数问题
小C的倍数问题题意:根据小学数学的知识,我们知道一个正整数x是3的倍数的条件是x每一位加起来的和是3的倍数。反之,如果一个数每一位加起来是3的倍数,则这个数肯定是3的倍数。现在给定进制P,求有多少个B满足P进制下,一个正整数是B的倍数的充分必要条件是每一位加起来的和是B的倍数。数据范围:第一行一个正整数T表示数据组数(1接下来T行,每行一个正整数P(2
2017-08-12 18:36:48 707
原创 找规律+菊花图 - hdu6090
Rikka with Graph 题意:有n个点,你可以选择连接m条边,两个连接的点距离为1,不连接的距离为n,求这个无向图的所有边权和的最小值。 数据范围:0<=t<=101<=n<=10^6, 1<=m<=10^12 分析:用m条边进行构图,可以构建菊花图,中间一个点,其他都是绕这个点围城圈的图,有最小边权和。...
2017-08-12 11:57:41 2496
转载 区间查询+位运算 - hdu6085
Rikka with Candies 题意:A数组n个数,B数组m个数,q个查询, 每次给出一个k,询问有多少对(i,j), 使得Ai % Bj = k, 输出对数对模2的值 数据范围:1<=m,n,q<=50,0001<=Ai,Bi<=50,0000<=ki<=maxBi 分析:首先,用一个vis数组0...
2017-08-12 11:12:44 419
原创 并查集+DFS - hihoCoder #161 树结构判定
树结构判定 描述给定一个包含 N 个顶点 M 条边的无向图 G ,判断 G 是不是一棵树。输入第一个是一个整数 T ,代表测试数据的组数。 (1 ≤ T ≤ 10)每组测试数据第一行包含两个整数 N 和 M 。(2 ≤ N ≤ 500, 1 ≤ M ≤ 100000)以下 M 行每行包含两个整数 a 和 b ,表示顶点 a 和顶点 b 之间有一条边。(1 ≤ a,...
2017-08-12 10:03:06 316
原创 树形结构+博弈论 - hdu6105
Gameia 题意:给定一棵树,Alice先涂色,图的点变成白色,Bob在Alice后涂色,所涂点以及相邻的点都变成黑色.Bob能在任意时刻剪断一条边,但是只能k次。如果所有点都被着色,有白色就是Alice赢,否则Bob赢。 数据范围:T≤1001≤N≤5000≤K≤5001≤Pi≤i 思路:博弈论。因为相邻的点能都会变成黑色,可以在之前就...
2017-08-11 22:53:51 2541
原创 圆的反演+计算几何 - hdu6097
Mindis题意:圆心 O 坐标(0, 0), 给定两点 P, Q(不在圆外),满足 PO = QO,要在圆上找一点 D,使得 PD + QD 取到最小值。 数据范围:T≤500000−100≤x,y≤1001≤r≤100 思路:根据圆的反演,构造一个相似三角形,可以转换问题。如果求得的距离小于eps,说明近似于原点,距离为2*r;然后就...
2017-08-11 20:05:29 745
原创 字符串+尺取法 - HDU6103
Kirinriki 题意:定义两个字符串之间的距离为: disA,B=∑i=0n−1|Ai−Bn−1−i| , 给定一个字符串,选取两个不想交的子串,使得两个子串的距离为小于给定的m的最大值。 数据范围:0≤m≤5000Each character in the string is lowercase letter, 2≤|S|≤5000∑|S|≤2...
2017-08-11 14:33:45 226
原创 DP+字符串 - hihoCoder #160
#1320 : 压缩字符串 描述 小Hi希望压缩一个只包含大写字母'A'-'Z'的字符串。他使用的方法是:如果某个子串 S 连续出现了 X 次,就用'X(S)'来表示。例如AAAAAAAAAABABABCCD可以用10(A)2(BA)B2(C)D表示。此外,这种压缩方法是可以嵌套的,例如HIHOHIHOCODERHIHOHIHOCODER可以表示成2(2(HIHO)COD...
2017-08-11 13:11:31 299
转载 数学 模+位运算 - HDU 6058
Rikka with Candies转自:hnust_Derker 模+位运算,现在还是不打能明白,先留个记录。 /**HDU 6085 Rikka with Candies题意:A数组n个数,B数组m个数,q个查询, 每次给出一个k,询问有多少对(i,j), 使得Ai % Bj = k, 输出对数对模2的值思路:首先,用一个vis数组01方式记录A数组中的数是...
2017-08-10 10:49:22 275
原创 HDU 6071 - 同余+最短路
Lazy Running 题意:给你一个由四个节点组成的环,求从节点2出发,回到节点2的不小于k的最短路。i只能跑向i+1或者i-1思路:根据限制条件,用邻接表建图,可以防止更新时有不合法的情况因为要构成回路,考虑不绕圈,最小是选择与起点相邻的两条边构成回路。选择模数m,应该是min(a[1][0],a[1][2])*2 (下标从0开始)用Dijkstra更新最短路,在 f...
2017-08-09 11:49:33 347
原创 DP+字符串 - hihoCoder#162 回文字符串
回文字符串描述给定一个字符串 S ,最少需要几次增删改操作可以把 S 变成一个回文字符串?一次操作可以在任意位置插入一个字符,或者删除任意一个字符,或者把任意一个字符修改成任意其他字符。输入字符串 S。S 的长度不超过100, 只包含'A'-'Z'。输出最少的修改次数。 分析:这个首先一看就是DP题,所以先设计一个动规方程 dp[i][j]表示从字符串i到j...
2017-08-09 10:20:09 307
原创 动态规划 - HDU6092 Rikka with Subset
Rikka with Subset 题意:有一个正整数数列 a[ ] ,长度(n<=50)。b[i] 表示元素和为 i 的集合个数。给你一个数列 b[ ] ,长度(m<=10000),让你求 a[ ],并按照其字典序最小输出。 容易想到,0的个数就是log2(b[0]),一的个数就是b[1]/b[0].但是题目明确是正整数,所以1的个数其实就是b[1].广义的讲,...
2017-08-08 20:34:06 692
原创 同余+最短路 做完全背包
POI X Sums 一个集合 SSS 内有 nnn 个正整数 {a1,a2,…,an}\{a_1, a_2, \ldots, a_n\}{a1,a2,…,an} ,S′S'S′ 表示由集合 SSS 中的数相加所得的集合,每个数都可以用无数次。有 qqq 次询问,询问一个 xxx 是否在 S′S'S′ 内。存在输出 y 否则输出 n。n≤5000...
2017-08-07 20:04:28 796
原创 DP求最小花费 - 九度OJ 1086
DP求最小花费,可以用最短路的思想来做。不过最短路是二维矩阵,这里我们做的是一维。题目1086:最小花费题意:给你n个点,标号从1 - n,再给出n-1条边,代表从1到2...n之间的距离。三种车票,长度为L1,L2,L3,价格为C1,C2,C3,问你从坐标a到b最少的花费(在坐标点换乘,超出的距离也只能在到达的最近点换乘)。数据范围:0这就相当于最短路,用f[ ]数组记录,一
2017-08-06 23:06:39 757
原创 背包与贪心
背包问题最经典的就是01背包。n个物品,有体积 w 和价值 v 两种属性,选择一部分填充容量为 m 的背包(可以不填满),求能获得的最大价值。其实分析下来,动态转移方程就是 f[i][v]=max{f[i-1][v], f[i-1][v-c[i]]+w[i]} ,优化后就是 f[v]=max{f[v], f[v-c[i]]+w[i]} (第二重for循环从m -> v[i],为了不更新i
2017-08-06 23:00:45 350
原创 01背包查找路径
做01背包,我们能知道最后的结果,若果求路径,我们可以根据状态转移方程逆推。看一个百度之星2017年的题度度熊的午饭时光Problem Description度度熊最期待每天的午饭时光,因为早饭菜品清淡,晚饭减肥不敢吃太多(胖纸的忧伤T.T)。百度食堂的午餐超级丰富,祖国各大菜系应有尽有,度度熊在每个窗口都有爱吃的菜品,而且他还为喜爱的菜品打了分,吃货的情怀呀(>.
2017-08-06 23:00:08 419
原创 完全背包+最值问题
在解决完全背包问题时,通常会遇到两种问题,一种是恰好将背包装满,一种是不要求恰好装满。是否恰好装满只是初始化的会有区别。恰好装满 如果要求恰好装满背包,那么在初始化时除了f[0]为0,其它f[1..V]均设为-∞(求最小值设为∞),这样就可以保证最终得到的f[N]是一种恰好装满背包的最优解。不一定恰好装满 如果并没有要求必须把背包装满,而是只希望价格尽量大,初始化时应该将f[0..
2017-08-06 10:12:59 853
fibonacci构造矩阵-总结.doc
2017-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人