bzoj 2659 几何】的更多相关文章

首先考虑(0, 0)到(p, q)这条直线. y = q / p * x. sum{k = 0 to (p - 1) / 2} [q / p * k] 就是直线下方的点数.sum{k = 0 to (q - 1) / 2} [p / q * k] 就是直线左方的点数. 如果gcd(p, q) = 1的话,这条直线上没有整点,所以不会重复计算.相等的时候的数恰好是p * q 矩形的1/4.答案当然是(p - 1) * (q - 1) / 4.//转自叉姐的话.. /****************…
2659: [Beijing wc2012]算不出的算式 Time Limit: 3 Sec  Memory Limit: 128 MB Description 算不出的算式背景:曾经有一个老掉牙的游戏放在我面前,我没有珍惜.直到这个游戏停产才追悔莫及.人世间最痛苦的事情莫过于此,如果上天给我一个再玩一次的机会,我一定要,通关!题目描述:如果你真的很想玩这个游戏,那么就先看看我的题目吧,搞不定这些的话是没办法通关的哟.第一关其实很简单,只有一个关闭的有密码锁的大门.这大门上写着一个奇怪的算式,估…
思路:我刚开始算三角形的方法是原点叉积三条边,然后计算每条边向量积的贡献,但是对于同一条线上的点 有时候没有办法抵消掉..... 看网上的思路是对于一个三角形的面积通过两条边的叉积获得,然后枚举一个点,排序去掉公式的绝对值,记录 后缀和进行计算... 看的这篇博客.. https://www.cnblogs.com/GXZlegend/p/7509699.html #include<bits/stdc++.h> #define LL long long #define fi first #de…
思路: 一开始以为是真·欧几里德 a,b来回消 (其实用不了那么麻烦) 我们发现 这是一个矩形 求一下整点数 完了.. 要特判 p=q的情况 //By SiriusRen #include <cstdio> long long p,q; int main(){ scanf("%lld%lld",&p,&q); printf()*(q-)/+(p==q)*(q-)/); }…
1719: [Usaco2006 Jan] Roping the Field 麦田巨画 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 82  Solved: 26[Submit][Status][Discuss] Description Farmer John is quite the nature artist: he often constructs large works of art on his farm. Today, FJ wants…
题意 给两个奇质数\(p, q(p, q < 2^{31})\),求\(\sum_{k=1}^{\frac{p-1}{2}} \left \lfloor \frac{kq}{p} \right \rfloor+ \sum_{k=1}^{\frac{q-1}{2}} \left \lfloor \frac{kp}{q} \right \rfloor\) 分析 神题啊. 首先\(\sum_{k=1}^{\frac{p-1}{2}} \left \lfloor \frac{kq}{p} \right…
http://www.lydsy.com:808/JudgeOnline/problem.php?id=1041 所谓的神题,我不会,直接题解..看了半天看懂题解了.详见hzwer博客 这题呢,我只能吸收些思想,即,当我们要找合法解的时候,我们可以深究它的性质,然后用性质来判定是否存在合法解. 此神题直接看题解打码. #include <cstdio> #include <cstring> #include <string> #include <iostream&…
最近有点颓废,刷水题,数学题(根本不会做啊) 题意:求 q,p是两个奇质数 网上题解就直接说是几何意义,问了别人才知道 我们在坐标轴上画出来就是在线段y=(q/p)x下方的格点和y=(p/q)x下方的格点 如果p<>q,那么线上没有格点,就直接把这两块拼起来,变成一个矩形然后就直接算了 如果p=q,那就不用说了,都会 var p,q:int64; begin read(p,q); )*(p+)>>) )*(q-)>>); end.…
1091: [SCOI2003]切割多边形 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 356  Solved: 157[Submit][Status][Discuss] Description 有一个凸p边形(p<=8),我们希望通过切割得到它.一开始的时候,你有一个n*m的矩形,即它的四角的坐标分别为(0,0), (0,m), (n,0), (n,m).每次你可以选择一条直线把当前图形切割成两部分,保留其中一个部分(另一部分扔掉)切割线的长度…
http://www.lydsy.com/JudgeOnline/problem.php?id=1610 两种做法,一种计算几何,一种解析几何,但是计算几何的复杂度远远搞出解析集合(虽然精度最高) 计算几何:枚举每条线(变成向量),然后判断是否有其它线和他平行(叉积为0,但是要注意,初始化ans为1,因为我们只是判不加平行的) #include <cstdio> #include <cstring> #include <cmath> #include <strin…