![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序竞赛编程
努力变成大白的小白
书读得不多,想得太多
展开
-
2019牛客暑期多校训练营(第二场)A-Eddy Walker
题目链接:https://ac.nowcoder.com/acm/contest/882/A思路:模拟一遍会发现落在所有可能的点上的概率是均等的(p=1n−1)\left({p=\frac{1}{n-1}}\right)(p=n−11),在特判{n==1}\lbrace{n==1}\rbrace{n==1}和{m==0}\lbrace{m==0}\rbrace{m==0}的情况就ok{ok}o...原创 2019-07-21 20:27:27 · 183 阅读 · 0 评论 -
约数的平方和【数论】
代码:typedef long long ll;const int mod=1e9+7;ll qpow(ll x,ll y){ ll ans=1; while(y) { if(y&1) ans=ans*x%mod; x=x*x%mod; y>>=1; } re...原创 2019-07-21 18:29:04 · 479 阅读 · 0 评论 -
找矩阵中的最大正方形
代码:int tmp[maxn][maxn];int maxSquare(){ int row = n; //行大小 int line = m; //列大小 for(int i=0; i<row; i++) { tmp[i][0] = M[i][0]; } for(int i=0; i<line; i++) ...原创 2019-07-21 18:21:04 · 654 阅读 · 0 评论 -
2019牛客暑期多校训练营(第五场)C generator 2【BSGS】
题目链接:https://ac.nowcoder.com/acm/contest/885/C思路:感觉自己说不清楚,具体见文末参考链接博客。AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll n,x0,a,b,p;ll q,v;ll qpow(ll x,ll y,ll mo)...原创 2019-08-02 21:26:15 · 149 阅读 · 0 评论 -
P4195 【模板】exBSGS/Spoj3105 Mod
题目链接:https://www.luogu.org/problem/P4195AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll a,p,b,x;map<ll,ll>hashmp;ll gcd(ll x,ll y){ return (y==0?x:gcd(y...原创 2019-08-02 21:20:06 · 127 阅读 · 0 评论 -
2019牛客暑期多校训练营(第五场)three points 1【计算几何】
题目链接:https://ac.nowcoder.com/acm/contest/885/I思路:先把最长边的一个点放在矩阵顶点(原点)上,再将最长边的另一个点放在矩阵框上,通过已知条件求第三个点位置(一定可求),最后判断第三点是否合理即可。AC代码:#include<bits/stdc++.h>using namespace std;double w,h,a,b,c;co...原创 2019-08-02 21:15:23 · 105 阅读 · 0 评论 -
Tinkoff Internship Warmup Round 2018 and Codeforces Round #475 (Div. 1) A. Alternating Sum
题目链接:http://codeforces.com/problemset/problem/963/AAC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const ll mod=1e9+9;ll qpow(ll x,ll y){ ll ans=1; x%=mod; ...原创 2019-07-21 00:07:16 · 110 阅读 · 0 评论 -
Hello 2019 D. Makoto and a Blackboard【数学期望DP】
题目链接:http://codeforces.com/contest/1097/problem/D思路:考虑将一个数拆成若干个素数乘积,预处理一下。AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod=1e9+7;ll n,k;ll qpow(ll x,ll ...原创 2019-07-20 21:36:10 · 105 阅读 · 0 评论 -
BZOJ 3884: 上帝与集合的正确用法【欧拉降幂】【递归】
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3884AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll eulr(ll n){ ll ans=n; ll tmp=n; for(ll i=2;i*i...原创 2019-07-29 23:45:01 · 108 阅读 · 0 评论 -
HDU 3501 Calculation 2【欧拉函数】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3501相关知识:求小于nnn且与nnn互质的数的和若gcd(i,n)==1gcd(i,n)==1gcd(i,n)==1,则有 gcd(n−i,n)==1gcd(n-i,n)==1gcd(n−i,n)==1。于是在小于nnn且与nnn互质的数中,iii与n−in-in−i总是成对出现的,且相加等于...原创 2019-07-29 22:14:03 · 99 阅读 · 0 评论 -
P1592互质【数学】【欧拉函数】
题目链接:https://www.luogu.org/problem/P1592AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e6+10;ll a[maxn];int main(){ ll n,k; cin>>n>...原创 2019-07-29 21:20:19 · 166 阅读 · 0 评论 -
HDU 6589 Sequence【NTT】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6589AC代码:#include<bits/stdc++.h>using namespace std;#define mod 998244353typedef long long ll;const int maxn=3e5+10;const int maxn1=1e6+10;...原创 2019-07-24 19:06:48 · 444 阅读 · 0 评论 -
2017NCPC G Galactic Collegiate Programming Contest【STL】【multiset】
题目链接:http://codeforces.com/gym/101572/attachments题目大意:n个队伍比赛,给出m轮过题队伍的号码以及罚时,求team1的每轮的实时排名。思路:用multiset的结构体维护排名即可。AC代码:#include<bits/stdc++.h>using namespace std;struct node{ int guo...原创 2019-07-19 23:00:46 · 122 阅读 · 0 评论 -
HDU 6559 The Tower
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6559思路:建立圆锥曲面和运动轨迹的方程,联立方程解。AC代码:#include<bits/stdc++.h>using namespace std;double delta(double a,double b,double c){ double ans=b*b-4*a*...原创 2019-07-16 21:58:41 · 153 阅读 · 0 评论 -
hdu 6588 Function【数学】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6588题解:(我也想自己以后比赛的时候可以手推出这样的演算啊啊啊啊。。。。。)AC代码:(可能有些windows跑不了__int128)#include<bits/stdc++.h>using namespace std;#define mod 998244353typedef...原创 2019-07-23 18:38:23 · 592 阅读 · 0 评论 -
HDU 5446 Unknown Treasure【Lucas】【excrt】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5446思路:先对每个素数ppp求Lucas,然后在求中国剩余定理。Lucas+excrt裸题。AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll qmul(ll x,ll y,ll mo...原创 2019-08-02 23:20:12 · 113 阅读 · 0 评论 -
HDU 3221 Brute-force Algorithm【矩阵快速幂】【欧拉降幂】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3221AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod=10000;ll n,p,aa,b;const ll maxn=1e6+10;ll phi[maxn];...原创 2019-07-30 18:48:56 · 231 阅读 · 0 评论 -
POJ 2417 Discrete Logging【BSGS】【离散对数】
题目链接:http://poj.org/problem?id=2417AC代码:#include<iostream>#include<cstdio>#include<cstdlib>#include<cmath>#include<algorithm>#include<queue>#include<map&...原创 2019-08-01 23:12:50 · 157 阅读 · 0 评论 -
HDU 6624 fraction【数论】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6624题目大意:给定p,xp,xp,x,存在两整数a,ba,ba,b,求解满足a<b, a≡bx(mod p)a<b,\ a≡bx(mod \ p)a<b, a≡bx(mod p)的最小值bbb。思路:令a=bx−cpa=b...原创 2019-08-05 23:30:57 · 214 阅读 · 0 评论 -
HDU 3988 Harry Potter and the Hide Story【数论】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3988题目大意:给定n,kn,kn,k,找到最大的iii满足{i∣ki divides n!}\{i|k^i \ \ divides \ \ n!\}{i∣ki divides n!}。kkk数据范围1e141e1...原创 2019-08-05 00:03:51 · 127 阅读 · 0 评论 -
Codeforces Round #426 (Div. 1) A. The Meaningless Game【数论】
题目链接:http://codeforces.com/problemset/problem/833/A题目大意:主人和狗两者进行喊(叫)数字游戏,初始分均为111,先喊(叫)出自然数kkk者,其分数乘以 k2k^2k2 ,另者分数乘以 kkk ,给出结果分数a和ba和ba和b,问结果是否成立。思路:假设成立前提下,a∗b==a*b==a∗b==他们所有轮数所喊自然数kkk的立方,再验证一下就行...原创 2019-07-26 23:33:48 · 85 阅读 · 0 评论 -
P2422 良好的感觉【单调队列】
题目链接:https://www.luogu.org/problem/P2422AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;int n;const int maxn=1e5+10;ll a[maxn];ll sum[maxn];ll cnt[maxn];int que[ma...原创 2019-07-26 22:38:53 · 352 阅读 · 0 评论 -
HDU 6620 Just an Old Puzzle【逆序对】【数字华容道】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6620思路:其实题目中的120步以内这个要求可以忽略。先求一下逆序对(相关题目:https://www.luogu.org/problem/P1908)然后根据数字华容道必然有解的规律只存在于如下3个细分情况:1.1.1.若格子列数为奇数,则逆序数必须为偶数;2.2.2.若格子列数为偶数,且...原创 2019-07-31 20:51:35 · 680 阅读 · 2 评论 -
HDU 6623 Minimal Power of Prime【数学】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6623思路:先预处理出10185\sqrt[5]{10^{18}}51018=400040004000以内的素数,然后先试除掉400040004000以内的素数,然后只要分别判四次根、三次根和平方根是否等于nnn,都不等的话就说明nnn本身就是一个素数。复杂度:O(T∗n5log(n))O(T*\...原创 2019-07-31 20:32:55 · 242 阅读 · 0 评论 -
HDU 2866 Special Prime【数论】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2866思路:https://blog.csdn.net/ACdreamers/article/details/8572959只需要预处理枚举1−1e61-1e61−1e6范围内的xxx,使其满足p=(x+1)3−x3p=(x+1)^3-x^3p=(x+1)3−x3是素数,最后求前缀和就可以实现O(1...原创 2019-08-04 22:00:40 · 103 阅读 · 0 评论 -
HDU 6441Find Integer【本原勾股数】【费马大定理】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6441思路:由费马大定理知当n>2n>2n>2和n==0n==0n==0时等式an+bn=cna^n+b^n=c^nan+bn=cn是不成立的,而n==1n==1n==1是可以直接输出答案的,所以只需考虑n==2n==2n==2的情况,由数论中的本原勾股数组知:令gc...原创 2019-08-04 19:53:33 · 175 阅读 · 0 评论 -
2019牛客暑期多校训练营(第三场)F Planting Trees【单调队列】
题目链接:https://ac.nowcoder.com/acm/contest/883/F题解:AC代码:#include<bits/stdc++.h>using namespace std;#define INF 0x3f3f3f3fint N,M;int a[505][505];int queinc[505],quedec[505];//用数组模拟单调队列in...原创 2019-07-26 16:19:31 · 129 阅读 · 0 评论 -
2019牛客暑期多校训练营(第六场)D Move【模拟】
题目链接:https://ac.nowcoder.com/acm/contest/886/D思路:数据很水,根据题意暴力数组模拟就okokok了。也可以优化用STL的multiset模拟会更快。AC代码:#include<bits/stdc++.h>using namespace std;int v[1010];int vis[1010];int n,k;bool cm...原创 2019-08-03 23:34:12 · 124 阅读 · 0 评论 -
2019牛客暑期多校训练营(第六场) Is Today Friday?【模拟】【DFS】【蔡勒公式】
题目链接:https://ac.nowcoder.com/acm/contest/886/G思路:根据题意直接模拟计算,从0−90-90−9进行暴搜回溯且checkcheckcheck此时的条件下是否满足,直到找到满足条件的情况,用蔡勒公式来判断是否是星期五就okokok了,读入时不去重会超时!AC代码:#include<bits/stdc++.h>using namespac...原创 2019-08-03 23:27:48 · 159 阅读 · 0 评论 -
Codeforces Round #480 (Div. 2) D. Perfect Groups【数论】
题目链接:http://codeforces.com/contest/980/problem/D题目大意:迷。。。AC代码:#include<bits/stdc++.h>using namespace std;const int maxn=5e3+10;int n;int a[maxn],b[maxn];int cnt[maxn];int solve(int n)//...原创 2019-07-25 22:53:17 · 89 阅读 · 0 评论 -
2019牛客暑期多校训练营(第三场)D Big Integer【数学】【欧拉定理】
题目链接:https://ac.nowcoder.com/acm/contest/883/D题解:AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e5+10;ll prime[maxn],k[maxn];int tot;ll p,m,n;ll ...原创 2019-07-25 22:10:56 · 98 阅读 · 0 评论 -
Codeforces Round #334 (Div. 1)C. Lieges of Legendre【SG】【博弈】
题目链接:http://codeforces.com/problemset/problem/603/C思路:对kkk分奇偶,然后对nnn模拟打表,然后就可以发现其中的规律。AC代码:#include<bits/stdc++.h>using namespace std;int n,k;//k=3;//int sg[100005];//int dfs_sg(int n)/...原创 2019-07-30 22:30:12 · 104 阅读 · 0 评论 -
HDU 2837 Calculation【欧拉降幂】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2837AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;#define Mod(a,b) (a>=b?a%b+b:a)ll n,m;ll eulr( ll n){ ll an...原创 2019-07-30 21:13:34 · 122 阅读 · 0 评论 -
hdu 6198 【BM求线性递推】【模板】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6198思路:先手推出前几项,然后直接套用模板就ok{ok}ok了。模板真好用。。。。AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const ll mod=998244353;ll q...原创 2019-07-21 22:29:03 · 151 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场)Integration
题目链接:https://ac.nowcoder.com/acm/contest/881/B证明:AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod=1e9+7;ll a[1005];ll pre[1005];int n;void presolve(){...原创 2019-07-18 20:19:16 · 75 阅读 · 0 评论 -
HDU6546 Function【优先队列】【导数】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6546思路:因为题目要求所有函数最后的xi取值都为正,所以可以先将所有函数的初始x的值赋为1,然后用优先队列的结构体维护所有函数在它们的xi下的导数大小,结构体记录了当前导数的自变量取值,重载的是导数的大小。初始化之后计算所有函数在xi=2时的导数,放进优先队列内。m=m-n;之后暴力枚举自变量为1时...原创 2019-07-15 18:48:22 · 270 阅读 · 0 评论 -
Codeforces Round #552 (Div. 3)E. Two Teams【STL】【set】
题目链接:https://codeforces.com/contest/1154/problem/E题目大意:两个教练要从n个有不同技能等级的人中选队员,每次教练总是挑技能分最高的那个人和他左边和右边的k个人,超出范围就不算。输出每个人分别属于哪个队。思路:用STL库函数中的set或者vector,暴力20000会超时。自己太菜了补题补到自闭,,不太会STL,队友一下子就搞定了,贴一贴队友的...原创 2019-04-18 14:55:18 · 120 阅读 · 0 评论 -
POJ 1330 Nearest Common Ancestors【tarjan】【简单LCA】【模板题】【并查集】
题目链接:http://poj.org/problem?id=1330题目大意:给出n个父子关系,不会出现回路,求最原始祖先(根节点)。照大佬的板子自己手码了一遍,还挺长,,,AC代码:#include<iostream>#include<cstdio>#include<cstdlib>#include<cmath>#include&...原创 2019-04-17 23:11:53 · 120 阅读 · 0 评论 -
Codeforces Round #552 (Div. 3)D. Walking Robot
题目链接:https://codeforces.com/contest/1154/problem/D思路:有阳光时累加器容量满就优用累加器,否则用电池,因为电池的电用了就没了。没有阳光就优先用累加器的,在考虑电池。注意一开始的电池和累加器的值就是它的容量,签到题翻译错误真的智障了。AC代码:#include<bits/stdc++.h>using namespace std;...原创 2019-04-17 20:55:00 · 116 阅读 · 0 评论 -
Codeforces Round #552 (Div. 3)C. Gourmet Cat
题目链接:https://codeforces.com/contest/1154/problem/C现在的水平和一年前的水平没区别,看来这一年废了。我是智障。。。。。AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll a[5];int main(){ scanf("%l...原创 2019-04-17 12:14:34 · 98 阅读 · 0 评论