摘要:
http://codeforces.com/gym/100502/attachments 题意:有两个时钟上面有n个指针,给出的数字代表指针的角度。问能否在某一时刻使得两个时钟的指针重合。 思路:容易想到先对指针角度排序,然后相邻指针相减得到一个间距。如果这些间距能够相同的话,那么就代表可以在某个时 阅读全文
摘要:
http://www.spoj.com/problems/MINSUB/en/ 题意:给出一个n*m的矩阵M,和一个面积k,要使得M的子矩阵M'的最小元素最大并且面积大于等于k,问子矩阵M'的最小元素最大能是多少,并且求出最大的面积。 思路:二分一个最小元素x,转化为判断矩阵M里面是否存在一个子矩阵 阅读全文
摘要:
http://poj.org/problem?id=2796 题意:给出n个数,问一个区间里面最小的元素*这个区间元素的和的最大值是多少。 思路:只想到了O(n^2)的做法。 参考了http://www.cnblogs.com/ziyi--caolu/archive/2013/06/23/31515 阅读全文
摘要:
http://www.spoj.com/problems/INTSUB/en/ 题意:给定一个集合,该集合由1,2,3....2n组成,n是一个整数。问该集合中有趣子集的数目,答案mod1e9+7。 x的子集合有趣定义为,该子集中至少有两个数,a和b,b是a的倍数且a是集合中最小的元素。 思路:考虑 阅读全文
摘要:
http://codeforces.com/gym/101246/problem/C 题意:给出一个n*m的图,“*”表示这个地方需要炸掉,炸弹可以如果丢在(i,j)位置的话,那么可以炸掉第i行第j列的所有“*”。问最少需要丢多少个炸弹可以使得所有“*”被炸掉。 思路:一看就以为是个最小顶点覆盖。然 阅读全文
摘要:
http://codeforces.com/gym/101246/problem/J 题意:给出n个点坐标,要使这些点间距相同的话,就要移动这些点,问最少的需要的移动距离是多少,并输出移动后的坐标。 思路:昨晚比赛确定的一点就是通过X分搜索去枚举间距,使得最后的移动距离最短。 不过使用的是二分,而且 阅读全文
摘要:
http://codeforces.com/problemset/problem/777/E 题意:给出n个环状圆柱,每个圆环有一个内半径a,外半径b,和高度h,只有外半径bj <= bi并且bj > ai,这样j才可以放在i的上面,问最大能达到的高度是多少。 思路:一开始用数组dp错了,主要是推错 阅读全文
摘要:
http://codeforces.com/gym/101257/problem/F 题意:给出一个n*m的地图,上面相同数字的代表一个国家,问对于每个国家有多少个国家在它内部(即被包围)。例如第一个样例,1包围2,2包围3,所以1包围2和3,2包围3。 思路:昨晚tmk大佬给我们讲了一下这题。对于 阅读全文
摘要:
http://codeforces.com/problemset/problem/778/A 题意:给出字符串s和字符串p,还有n个位置,每一个位置代表删除s串中的第i个字符,问最多可以删除多少个字符使得s串依旧包含p串。 思路:想到二分,以为二分做法依旧很暴力。但是别人的做法确实就是二分暴力搞啊。 阅读全文
摘要:
http://acm.hdu.edu.cn/showproblem.php?pid=4283 题意:有n个数字,不操作的情况下从左到右按顺序输出,但是可以先让前面的数字进栈,让后面的数字输出,然后栈里的数字再输出。执行完各种操作后,第i个数字输出的代价是w[i] * (i-1)。问如何弄才能使得代价 阅读全文
摘要:
http://poj.org/problem?id=1651 题意:给出n个数字,每取中间一个数,就会使得权值加上中间这个数和两边的乘积,求取剩两个数最少的权值是多少。 思路:区间dp。 一开始想了挺久还是写不出方程,做了点别的事回来再想就突然觉得很简单了。 一开始使得长度为1和2的区间dp[i][ 阅读全文
摘要:
http://poj.org/problem?id=2955 题意:给出一串字符,求括号匹配的数最多是多少。 思路:区间DP。 对于每个枚举的区间边界,如果两边可以配对成括号,那么dp[i][j] = dp[i+1][j-1] + 2,表示由上一个状态加上当前的贡献。 然后和普通的区间合并一样去更新 阅读全文
摘要:
http://lightoj.com/volume_showproblem.php?problem=1422 题意:去参加派对,有n场派对,每场派对要穿第wi种衣服,可以选择外面套一件,也可以选择脱掉。问至少需要穿多少次衣服。 思路:开始学一下区间DP。学习资料 区间dp就是枚举区间的长度,然后在起 阅读全文
摘要:
http://codeforces.com/gym/101257/problem/GGym 101257G 题意:给出n个人,和一个数s,接下来给出每个人当前的分数和输掉的概率。当一个人输了之后就会掉s分。求第i个人当前的分数大于第j个人当前的分数并且比赛结束后第i个人的分数小于第j个人的(i,j) 阅读全文
摘要:
http://codeforces.com/problemset/problem/777/D 题意:给出n道字符串,删除最少的字符使得s[i] <= s[i+1]。 思路:感觉比C水好多啊,大概是题目比较难看懂吧。直接从后面往前扫,用后面的答案更新前面的答案。考虑如果后面的字符串比前面的大,那么直接 阅读全文