随笔分类 -  /* 圣人不死 AC不止!*/

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 32 下一页
coding不息!
摘要:题目传送门 1 /* 2 好吧,我不是地球人,这题只要判断正方形就行了,正三角形和正五边形和正六边形都不可能(点是整数)。 3 但是,如果不是整数,那么该怎么做呢?是否就此开启计算几何专题了呢 4 */ 5 /*************************************... 阅读全文
posted @ 2015-08-09 08:34 Running_Time 阅读(195) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:一只兔子顺时针跳,另一只逆时针跳,跳石头权值相等而且不能越过起点 3 LPS:这道就是LPS的应用,把环倍增成链,套一下LPS,然而并不能理解dp[i][i+n-2] + 1,看别人的解题报告吧,以后来补(玩游戏) 4 详细解释 5 */ 6 /... 阅读全文
posted @ 2015-08-08 18:06 Running_Time 阅读(258) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 数学:约瑟夫环问题的变形,首先定义f[i]表示剩下i个人时,最后一个选出的人,有个公式:f[i] = (f[i-1] + m) % i 3 f[1] = 0(编号从0开始),那么类似最后一个数的求法,先找到剩2个人和剩3个人时,最后的编号,然后跟着最... 阅读全文
posted @ 2015-08-08 15:17 Running_Time 阅读(153) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:洛克人有武器可以消灭机器人,还可以从被摧毁的机器人手里得到武器,问消灭全部机器人的顺序总数 3 状态压缩DP:看到数据只有16,就应该想到状压(并没有)。因为是照解题报告写的,代码里加点注释,省的以后忘记了 4 */ 5 /**************... 阅读全文
posted @ 2015-08-08 13:55 Running_Time 阅读(232) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 Manacher:该算法能求最长回文串,思路时依据回文半径p数组找到第一个和第三个会文串,然后暴力枚举判断是否存在中间的回文串 3 另外,在原字符串没啥用时可以直接覆盖,省去一个数组空间,位运算 >>1 比 /2 速度快,用了程序跑快200ms左右,位运算大... 阅读全文
posted @ 2015-08-08 10:11 Running_Time 阅读(154) 评论(0) 推荐(0)
摘要:题目传送门关于求解最长回文子串,有dp做法,也有同样n^2的但只用O(1)的空间,还有KMP,后缀数组?? 1 int main(void) { 2 while (scanf ("%s", str + 1) == 1) { 3 int len = strlen (st... 阅读全文
posted @ 2015-08-07 20:18 Running_Time 阅读(296) 评论(0) 推荐(0)
摘要:题目传送门题意:求LPS (Longest Palidromic Subsequence) 最长回文子序列。和回文串不同,子序列是可以不连续的。分析:1.推荐->还有一种写法是用了LCS的思想,dp[i][j]表示i到j的最长回文串长度,状态转移方程: 1. dp[j][j+i-1] = ... 阅读全文
posted @ 2015-08-07 16:22 Running_Time 阅读(462) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:将子符串分成k组,每组的字符顺序任意,问改变后的字符串最少有多少块 3 三维DP:可以知道,每一组的最少块是确定的,问题就在于组与组之间可能会合并块,总块数会-1。 4 dp[i][j]表示第i组以第j个字符结尾的最少块数,状态转移方程... 阅读全文
posted @ 2015-08-07 16:06 Running_Time 阅读(248) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 思维/构造:赛后补的,当时觉得3题可以交差了,没想到这题也是可以做的。一看到这题就想到了UVA_11300(求最小交换数) 3 这题是简化版,只要判断行不行和行的方案就可以了,做法是枚举x[1],x[n]的所有可能,x[2~n-1]能递... 阅读全文
posted @ 2015-08-07 10:12 Running_Time 阅读(246) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:问选出3个数成等比数列有多少种选法 3 map:c1记录是第二个数或第三个数的选法,c2表示所有数字出现的次数。别人的代码很短,思维巧妙 4 */ 5 /************************************************ ... 阅读全文
posted @ 2015-08-06 21:11 Running_Time 阅读(181) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给出一系列读者出行的记录,+表示一个读者进入,-表示一个读者离开,可能之前已经有读者在图书馆 3 构造:now记录当前图书馆人数,sz记录最小的容量,in数组标记进去的读者,分情况讨论一下 4 */ 5 /***********************... 阅读全文
posted @ 2015-08-06 21:10 Running_Time 阅读(237) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:求邀请顺序使得去爬山的人最多,每个人有去的条件 3 贪心+优先队列:首先按照l和r从小到大排序,每一次将当前人数相同的被邀请者入队,那么只要能当前人数比最多人数条件小,该人能 被邀请,而且不用考虑最少人数的条件。网上的写... 阅读全文
posted @ 2015-08-06 20:19 Running_Time 阅读(197) 评论(0) 推荐(0)
摘要:好的,数据加强了,wa了题目传送门 1 /* 2 题意:1到n分成m组,每组和相等 3 贪心:先判断明显不符合的情况,否则肯定有解(可能数据弱?)。贪心的思路是按照当前的最大值来取 4 如果最大值大于所需要的数字,那么去找没有vis的数字 5 */ 6 /******... 阅读全文
posted @ 2015-08-06 18:33 Running_Time 阅读(276) 评论(0) 推荐(0)
摘要:题目传送门题意:找对称的,形如:123454321 子序列的最长长度分析:LIS的nlogn的做法,首先从前扫到尾,记录每个位置的最长上升子序列,从后扫到头同理。因为是对称的,所以取较小值*2-1再取最大值代码:/*******************************************... 阅读全文
posted @ 2015-08-05 22:58 Running_Time 阅读(171) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给一个n个点,m条边的无向图,要求给m条边定方向,使得每个定点的出入度之差的绝对值小于等于1. 输出任意一种结果 3 图论:一个图,必定存在偶数个奇度顶点。那么从一个奇度定点深搜,当碰到另外一个奇度顶点时结束,这样能保证度数差12 #include 1... 阅读全文
posted @ 2015-08-05 21:18 Running_Time 阅读(206) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 这题可以用stl的mutiset容器方便求解,我对这东西不熟悉,TLE了几次,最后用读入外挂水过。 3 题解有O(n)的做法,还以为我是侥幸过的,后来才知道iterator it写在循环内才超时了,囧! 4 */ 5 /*******************... 阅读全文
posted @ 2015-08-05 17:00 Running_Time 阅读(207) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 Rabin_Karp:虽说用KMP更好,但是RK算法好理解。简单说一下RK算法的原理:首先把模式串的哈希值算出来, 3 在文本串里不断更新模式串的长度的哈希值,若相等,则找到了,否则整个模式串的长度的哈希值向右移动一位 4 */ 5 /*********... 阅读全文
posted @ 2015-08-05 16:35 Running_Time 阅读(219) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 hash+set:首先把各个字符串的哈希值保存在set容器里,然后对于查询的每一个字符串的每一位进行枚举 3 用set的find函数查找是否存在替换后的字符串,理解后并不难。另外,我想用64位的自然溢出wa了,不清楚 4 */ 5 /********... 阅读全文
posted @ 2015-08-05 16:31 Running_Time 阅读(238) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给一个字符串,划分成尽量少的回文串 3 区间DP:状态转移方程:dp[i] = min (dp[i], dp[j-1] + 1); dp[i] 表示前i个字符划分的最少回文串, 4 如果s[j] 到 s[i]是回文串,那么可以从... 阅读全文
posted @ 2015-08-05 11:11 Running_Time 阅读(175) 评论(0) 推荐(0)
摘要:题目传送门 1 /* 2 题意:给定包含n个点的无向图和一个长度为L的序列,修改尽量少的点使得相邻的数字相同或连通 3 DP:状态转移方程:dp[i][j] = min (dp[i][j], dp[i-1][k] + (j != a[i])); 4 dp[i][j]表示前... 阅读全文
posted @ 2015-08-05 10:59 Running_Time 阅读(233) 评论(0) 推荐(0)

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 32 下一页