题目:uva10382 - Watering Grass(区间覆盖变形)
题目大意:要给一片草坪浇水,给定草坪的长度和宽度,给出每个喷头的圆心C和喷水的半径R,问最少要几个喷头可以给整片草坪都浇上水。
解题思路:区间覆盖问题的变形,因为草坪有宽度W,所以这个每个喷头的有效范围是[C- sqrt(R* R - 0.25 * W * W , C + sqrt (R*R - 0...
分类:
其他好文 时间:
2014-07-27 11:34:12
阅读次数:
183
题目:10026 - Shoemaker's Problem
题目大意:有个鞋匠在同一天接到了一堆的生意。可是他每天只能做一双鞋,给出做每双鞋需要的时间和推辞做鞋的赔偿。问怎样合理的分配才能使得赔偿最小。
解题思路:鞋子编号 要花的时间 需要的赔偿(每天)
1 1 ...
分类:
其他好文 时间:
2014-07-27 11:33:02
阅读次数:
194
题目链接:uva 1511 - Soju
题目大意:给出两个点集,问说分别从两个点集中取一点的哈夫曼距离最小值。注意一个点集的x坐标小于0,另一个大于0.
解题思路:因为x2一定大于x1,所以对于x这一维,一定是+x2-x1,所以只需要考虑y这一维坐标即可。
#include
#include
#include
#include
#include
using namesp...
分类:
其他好文 时间:
2014-07-26 17:21:42
阅读次数:
306
题意:给你n,k,大意就是说给你一个已经涂满颜色长为n的字符串,现有k种颜色可以选择,问你最少要改变多少个箱子的颜色使得相邻箱子之间颜色不同。解题思路:当k = 2 时单独讨论,不能用贪心,其余情况都可贪心得到。解题代码: 1 // File Name: 219c.cpp 2 // Author.....
分类:
其他好文 时间:
2014-07-26 17:09:41
阅读次数:
256
题意:给你n,k,问你是否满足 所有偶数项减前一项绝对值的和 - 所有偶数项减前一项和的绝对值 = 2×k 解题思路:因为K 的范围适合所以就直接构造了解题代码: 1 // File Name: 359b.cpp 2 // Author: darkdream 3 // Created Time: ....
分类:
其他好文 时间:
2014-07-26 16:50:31
阅读次数:
273
这道题运用了置换的知识。
题目大意:
用两两交换的方式给一个数列排序,每交换一次的代价是这两个数之和求最小代价。
解题思路:
对于这种情况,我们在数列中找置换环。每个置换环内的数都是可以回归到它应有的位置上并且不影响其他的置换环。
置换环归位的代价有两种,第一种是用环内最小的数与其他数交换,另一种是用整个数列中最小的数与环内最小的数交换,完成环内所有数的归位后在换...
分类:
其他好文 时间:
2014-07-26 15:18:00
阅读次数:
186
大致题意:求A^B的所有约数(即因子)之和,并对其取模 9901再输出。解题思路:应用定理主要有三个:(1) 整数的唯一分解定理: 任意正整数都有且只有一种方式写出其素因子的乘积表达式。 A=(p1^k1)*(p2^k2)*(p3^k3)*....*(pn^kn) 其中pi均为素数(2) 约数和公式...
分类:
其他好文 时间:
2014-07-26 14:24:40
阅读次数:
291
题目链接:Codeforces 451D Count Good Substrings
题目大意:定义good string,就是就一个字符串的连续相同字符用一个该字符替代后,形成回文串的字符串。现在给出一个字符串,问说该字符串的子串中,为good string的串有多少个,分长度为奇数和偶数的输出。
解题思路:因为字符串的组成为a和b,所以只要是头尾相同的子串都是满足的。所以我们计算在...
分类:
其他好文 时间:
2014-07-26 03:03:36
阅读次数:
268
题目:uva10718 - Bit Mask(贪心)
题目大意:给出32位无符号的整数n ,给定边界L和R,要求在这个边界里面找出一个整数,它和N做或运算得到的值最大。
解题思路:要求做或运算得到的值最大,先N化成2进制的数,然后要使得结果最大的话,最好的就是【L,R】里面的某个数M能和N二进制数01互补.
例如: 00000111
那么M最好就是 11...
分类:
其他好文 时间:
2014-07-26 02:32:56
阅读次数:
186
Polya定理是个很神奇的东西~
题目大意:
n个珠子串成一个圆,用三种颜色去涂色。问一共有多少种不同的涂色方法。
不同的涂色方法被定义为:如果这种涂色情况翻转,旋转不与其他情况相同就为不同。
解题思路:
Polya定理模版题。
对于顺时针长度为i的旋转,为pow(3,__gcd(n,i);
对于翻转,当为奇数时,有:n*pow(3.0,n/2+1);
当为...
分类:
其他好文 时间:
2014-07-26 02:31:26
阅读次数:
201