GCDTime Limit: 6000/3000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5310Accepted Submission(s): 1907Problem Descrip...
分类:
其他好文 时间:
2014-07-19 20:28:46
阅读次数:
263
如果一个数字仅由6或者8构成,那么这个数字是幸运数字;如果一个数字是幸运数字的倍数,那么就是近似的幸运数。给定区间,求有多少个近似幸运数字位于这个区间之内。典型的容斥原理。首先,弄出所有的幸运数字,把那些本来就是另外幸运数字的倍数的幸运数字去掉(因为它肯定可以通过前面小的数字统计到)f[n]=sig...
分类:
其他好文 时间:
2014-07-18 14:38:40
阅读次数:
206
题目链接:uva 11014 - Make a Crystal
题目大意:给定n,表示在一个三维的空间,在坐标均不大于n的点中选取2个点,保证这两个点与(0,0,0)三点不同线。问能找到多少对。
解题思路:容斥原理,如果有坐标(x,y,z),并且(2x,2y,2z)在范围内,那个该对点就不可取,于是要减掉包含公共因子的部分。所以枚举因子,但是如果因子包含有偶数个质因子,则加上。
#i...
分类:
其他好文 时间:
2014-07-06 11:57:33
阅读次数:
210
题目链接:uva 11246 - K-Multiple Free set
题目大意:给定n,k。求一个元素不大于n的子集,要求该子集的元素尽量多,并且不含两个数满足a?k=b.
解题思路:容斥原理,f(i)=(?1)inki,取f函数的和即可。
#include
#include
#include
using namespace std;
typedef long long ...
分类:
其他好文 时间:
2014-07-06 09:58:18
阅读次数:
177
UVA 11014 - Make a Crystal
题目链接
题意:给定一个NxNxN的正方体,求出最多能选几个整数点,使得任意两点PQ不会使PQO共线。
思路:利用容斥原理,设f(k)为点(x, y, z)三点都为k的倍数的点的个数(要扣掉一个原点O),那么所有点就是f(1),之后要去除掉共线的,就是扣掉f(2), f(3), f(5)..f(n),n为素数.因为这些素数中包...
分类:
其他好文 时间:
2014-07-05 10:50:22
阅读次数:
209
原题: URAL 1091 http://acm.timus.ru/problem.aspx?space=1&num=1091题意:要求找出K个不同的数字使他们有一个大于1的公约数,且所有的数字都不能大于一个指定的数字S。解法:可以考虑每个S内的素数,此素数和它的所有倍数构成一个集合,则可以在这些集...
分类:
其他好文 时间:
2014-07-02 00:37:32
阅读次数:
253
题目链接:uva 11123 - Counting Trapizoid
题目大意:给定若干个点,问有多少种梯形,不包括矩形,梯形的面积必须为正数。因为是点的集合,所以不会优重复的点。
解题思路:枚举两两点,求出该条直线,包括斜率k,偏移值c,以及长度l。已知梯形的性质,一对对边平行,也就是说一对平行但是不相等的边。
所以将所有线段按照斜率排序,假设对于某一斜率,有m条边,那么这m...
UVA 11123 - Counting Trapizoid
题目链接
题意:给定一些点,不重复,求出一共有几个梯形
思路:先把所有两点组成直线求出来,然后排序,斜率相同的C2n个,然后再扣除掉重叠的直线情况和长度相等情况(这样为平行四边形或矩形),由于扣除的时候会重复扣掉重叠和相等,所以在加回来,这是容斥原理。
代码:
#include
#include
#in...
3622: 已经没有什么好害怕的了
Time Limit: 10 Sec Memory Limit: 256 MB
Submit: 7 Solved: 6
[Submit][Status]
Description
Input
Output
Sample Input
4 2
5 35 15 45
40 20 10 30
Sampl...
分类:
其他好文 时间:
2014-06-29 22:28:01
阅读次数:
325
题目链接:点击打开链接
stl+容斥
#include
#include
#include
#include
#include
#include
using namespace std;
#define N 65540
#define ll __int64
ll n;
ll a[N][4], mul[4]={1,16,256,4096};
ll h[N];
vectorG[N];
...
分类:
其他好文 时间:
2014-06-29 20:46:31
阅读次数:
193