- 博客(28)
- 收藏
- 关注
原创 圆的反演学习笔记
Part 1:相关性质:一、反演的概念设在平面内给定一点O和常数k(k不等于零),对于平面内任意一点A,确定A′,使A′为直线OA上一点,并且有向线段OA与OA′满足OA·OA′=k,我们称这种变换是以O为反演中心,以k为反演幂的反演变换,简称反演。称A′为A关于O(r)的互为反演点。二、作已知点的反演点的方法给出反演极O和反演幂k>0,作点A的反演点A′。令k=r...
2019-10-16 02:43:57
1806
原创 2019 ICPC 上海网络赛 K. Peekaboo
题目连接:https://nanti.jisuanke.com/t/41421题意:给定三个整数a, b, c,求半径为a、b,圆心坐标为原点的两个同心圆上的整点间的距离为c的点对题解:推一下圆上的整点坐标,因为点数很少然后暴力地算距离就好了详见代码注释~代码:#include<bits/stdc++.h>#define pb push_back#defi...
2019-09-18 00:35:08
321
原创 计算几何刷题总结
vj上刷了一阵子的计算几何基础题了,写个总结~关于点和向量,极角排序啊什么的,然后可能结合坐标出个题,需要转换一下题目意思的关于直线和线段,基本上是各种形式的判相交求交点,然后也有考察斜线的,可以看做是限定方向的直线。例:【USACO3.4.1】Closed Fences闭合的栅栏 :从观测点向多边形的每个顶点连一条射线,每条射线向左右偏移一个微小角度,第一个相交的线段就是能...
2019-08-30 00:16:14
335
原创 2019 HDU 多校 6623 Minimal Power of Prime---数论
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6623题意:给定n,求n的质因子中指数最小的质因子,输出指数题解:肯定要对n进行质因子分解,但是n有1e18之大,考虑到n的质因子如果很大的话,那么质因子的个数一定会很少。所以打出10000的素数表,对n进行质因子分解,如果n!=1,那么n含有>1e4的质因子,最多有4个。然后考虑这些大的...
2019-08-13 23:03:48
164
原创 2019 HDU 多校 6627 equation---思维
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6627题意:给定n,c求x的所有解,输出其分数形式,如果有无数个解输出-1题解:画出这n个绝对值函数的图像,发现它们的零点把x轴分成了n+1个区域,每个区域上都会有某个函数是原函数(绝对值符号里的那个函数)取负的形式,所以预处理一下ai,bi的负前缀和、正后缀和,可以直接得到每个区域上具体的...
2019-08-13 22:00:22
115
原创 2019 HDU 多校 6630 permutation 2--递推
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6630题意:给定n, x, y,问有多少个n的排列能满足相邻两个数字相差小于等于2题解:考虑一个一个的填数字的话,因为1-n的每个数字都要用上,所以x必须往小先走到1在往大走,如果x不慢慢走到1的话,到后面1这个数字就没有办法填进去了,y同理(应该先往大走到n在往小走)。然后会发现前面(后面)一...
2019-08-13 21:47:44
162
原创 2019 HDU 多校 6631 line symmetric---计算几何
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6631题意:给定一个简单多边形,问是否可以通过移动至多一点使得该图形变成一个轴对称的简单多边形,对应的点要求对称。题解:首先对称轴一定是多边形上的点p[i], p[i+1]或者p[i], p[i+2]上的中垂线,然后我们就可以暴力的枚举每条对称轴,判断是否可以通过移动一个点使得该图形成为一个轴对...
2019-08-13 21:10:33
185
原创 codeforces contest 1166 E. The LCMs Must be Large---思维
题目链接:https://codeforces.com/contest/1166/problem/E题解:代码:#include<bits/stdc++.h>using namespace std;const int maxm = 55;set<int>st[maxm];bool insect(int x, int y){ set&l...
2019-05-22 21:47:15
231
原创 codeforces contest 1032 D. Barcelonian Distance---计算几何
题目连接:http://codeforces.com/contest/1032/problem/D题解:可以很直观的想象,如果加上直线后能让距离变短的话,那么直线应该和A、B两点构成的矩形相交,所以计算出直线与矩形的交点后算距离求一个最小值就可以了。直线与坐标轴平行的话可以不用管交点。代码:#include<bits/stdc++.h>using namespace s...
2019-05-22 15:48:12
161
原创 codeforces contest 1163 C2. Power Transmission (Hard Edition)---计算几何
题目链接:https://codeforces.com/contest/1163/problem/C2题解:最多有n*(n-1)条直线,可以暴力的去枚举判断直线是否相交,同一平面内的两条直线不平行即相交,所以将所有的直线按斜率划分,相同斜率中去掉重复的直线,每个斜率的贡献就是:该斜率的直线数*(总的直线数(不算重合的)-该斜率的直线数)。感觉这道题主要是让我学了下pair和map的用法,还...
2019-05-22 00:57:12
180
原创 codeforces contest 1143 C. Queen---思维
题目链接:https://codeforces.com/contest/1143/problem/C题解:(假图论=-=)对于每个点,其可删除性都是独立的,和其他点没关系,所以...按从小到大的顺序遍历判断每个点是否可删就行了。code:#include<bits/stdc++.h>using namespace std;const int maxn = 1e5+5...
2019-04-02 20:16:32
232
原创 Codeforces Round #544 (Div. 3)---赛后总结
emm,一波掉分......难受刚把d,f1补了,思路都是对的,敲的时候也挺顺的,但是比赛的时候就是怎么都想不出来。所以还是敲代码太少,光有思路有屁用又A不了题......(打自己)题目链接:https://codeforces.com/contest/1133D.题:暴力计算d的值然后统计。考虑两个wa点,一个是分情况讨论,a[i]==0且b[i]==0。另一个是卡精度(wa...
2019-03-08 11:27:19
120
转载 codeforces contest 1095 D. Circular Dance---思维
题目链接:https://codeforces.com/problemset/problem/1095/D题解:题目保证一定有解,任取一个数作为起点,设其为r,其后两个元素分别为s1, s2。若s1的后两个元素中有s2,则说明s1在s2的前面,即顺序为r->s1->s2。反之亦可推导。(一开始还以为是找哈密顿环......想太多了=-=)代码:#include<...
2019-03-07 01:47:49
250
原创 codeforces contest 1117 D. Magic Gems---矩阵快速幂
题目连接:https://codeforces.com/contest/1117/problem/D题解:递推+矩阵快速幂#include<bits/stdc++.h>#define ll long longusing namespace std;const ll mod = 1e9+7;ll n, m;struct matrix{ ll m[105]...
2019-03-07 01:21:48
1882
原创 codeforces contest 1114 C. Trailing Loves (or L'oeufs?)---质因数分解
题目链接:https://codeforces.com/contest/1114/problem/C题意:求n!在b进制下的末尾0的个数题解:等价于求最大的k使得n!%(b^k) == 0先把b分解质因数,求n!中质因子p的次方结论:cnt = n/p + n/(p^2) + n/(p^3) + ...对于b的所有质因子,在n!中最小的次数即为答案#include<...
2019-03-07 01:19:00
166
1
原创 codeforces contest 1114 D. Flood Fill---区间dp
题目链接:https://codeforces.com/problemset/problem/1114/D题意:给定n个染色小方块,相邻颜色相同的小方块可看成一个大的染色块,每次可以改变一个染色块的颜色,问将n个染色块染成同一颜色的最小次数题解:区间dp,dp[i][j][0/1]表示区间[i,j]这一段元素变成最左边/最右边颜色所需的最小改变次数,初态是i == j, dp[i][j...
2019-03-07 01:17:54
191
原创 codeforces contest 1117 C. Magic Ship---二分
题目链接:https://codeforces.com/problemset/problem/1117/C题解:二分天数可解该题,主要是要考虑的曼哈顿距离的性质,风带来的影响是不能改变的,所以可以预处理出风带来的距离改变,在此基础上判断能否在k天内走到终点#include<bits/stdc++.h>#define ll long longusing namespace ...
2019-03-07 01:16:53
200
原创 codeforces contest 1092 C. Prefixes and Suffixes---回文串
题目链接:https://codeforces.com/contest/1092/problem/C题意:存在一个长度为n的字符串,现在给出其所有长度(1~n-1)的前缀和后缀,对于每一个给出的字符串,判断其是前缀还是后缀。题解:由两个长度为n-1的字符串就可确定整个字符串的内容,设两个长度为n-1的字符串分别是t1、t2,if(t1.substr(1, n-1) == t2.substr...
2019-02-28 03:05:58
183
转载 n!的质因数分解
例:1 2 3 4 5 6 7 8 我们求在8!中2的个数 1 1 1 1 首先我们先计算出2的倍数的个数:8/2=4 1 1 其次我们计算出4的倍数的个数: 8/4=2(上面一个式子求出了第一层,现在求第二层) ...
2019-02-23 02:02:00
1392
原创 质因数分解
#include<bits/stdc++.h>#define ll long longusing namespace std;const int maxn = 1e6+5;ll pri[maxn], m;void getprime(ll x){ m = 0; for(ll i = 2; i <= sqrt(x); i++){ if(...
2019-02-23 01:58:27
128
原创 DP入门--背包问题
01背包#include<bits/stdc++.h>using namespace std;const int maxn = 505;const int maxm = 1e5+5;int n, m, f[maxn][maxm], need[maxn], value[maxn];int main(){ cin >> n >> m;...
2019-02-22 07:59:49
209
原创 二进制枚举
例题:https://codeforces.com/problemset/problem/1097/Bcode:#include<bits/stdc++.h>using namespace std;int a[16];int main(){ int n; cin >> n; for(int i = 1; i <= n; i...
2019-02-12 04:56:29
95
原创 ACM-ICPC 2018 南京赛区网络预赛 L. Magical Girl Haze---k层最短路
题目链接:https://nanti.jisuanke.com/t/31001题意:可以选择k条边使其边权为0,求1到n的最短路题解:分层图+dijkstra,建立k层图,不同层之间的路为0代码:#include<bits/stdc++.h>using namespace std;#define ll long long#define inf 0x3f3f3f...
2018-09-02 06:07:32
306
原创 Codeforces Round #458 D. Bash and a Tough Math Puzzle---线段树
题目:http://codeforces.com/contest/914/problem/D题意:有查询和更新两个操作,更新是直接把某个值更新为给定值,查询是查询给定区间上的最大公约数(GCD),如果最大公约数是题中所给值(x)或者通过更改区间上的一个值可以使该区间的GCD变成x,则输出YES,不然输出NO。题解:用线段树维护区间上的GCD,更新就是单点更新,而查询操作emm...看代码注...
2018-09-01 11:08:32
141
原创 2018 Multi-University Training Contest 6
1001 oval-and-rectangle题解:2*b+a*Pi(手动死算),Pi的位数取多一点,注意输出答案的舍入操作代码:#include<bits/stdc++.h>using namespace std;#define pai 3.14159265358979int main(){ int T; cin>>T; w...
2018-08-10 15:16:59
201
原创 codeforces contest 630
题目连接:http://codeforces.com/contest/630题解:A:输出25B:对数,直接算C:D:E:3 2 3 2 3的规律,先算出第一列有多少个点 a=(y2-y1)/2+1,算有多少行 b=(x2-x1+1),算出偶数行 c=b/2,ans=a*b-c;F:G:H:I:连续的n辆车有4种选法,此时剩下n-2个车位,考虑连续n...
2018-07-30 03:52:06
173
原创 Educational Codeforces Round 47 B. Minimum Ternary String---思维
题目链接:http://codeforces.com/contest/1009/problem/B题解:1可以和0交换也可以和2交换,所以1是可以任意放的,而0和2的位置固定;所以要使该串数字最小 就是把所有的1移到第一个0和第一个2之间,(若是的一个2之前没有0,那么就是把所有的1放在2前)代码如下:#include<bits/stdc++.h>using ...
2018-07-17 14:47:51
194
原创 codeforces gym 101350
题目链接:http://codeforces.com/gym/101350C - Cheap Kangaroo最大公因数(gcd)cin/cout会tlelong long型输入输出用%ld会wa,要用%I64d#include<bits/stdc++.h>using namespace std;#define ll long longll x[10...
2018-06-18 02:24:57
233
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人