- 博客(31)
- 收藏
- 关注
原创 记录一下各个比赛的成绩 。。
2017 CCPC杭州站 铁牌2018 浙江省省赛 铜牌2018 ICPC-ACM西安邀请赛 银牌2018 ICPC-ACM上海大都会赛 铜牌2017蓝桥省二2018蓝桥省二2017 天梯银牌2018 天梯铜牌2018 icpc-acm 徐州站 regional 铜牌2018 icpc-acm 北京站 regional 完美铜牌2019 天梯铜牌2019...
2018-07-22 15:57:00 472
原创 codeforces 1013 c Photo of The Sky
http://codeforces.com/problemset/problem/1013/c 给出n*2个数字,组成n个坐标点,让这些坐标点所能确定的面积最小.方法就排序后,选其中连续的n个数作为x,剩下的按序作为y, 然后用xmax-xmin乘ymax-ymin 取最小解即可. #include<bits/stdc++.h>using namespace s...
2018-07-31 20:05:26 270
原创 codeforces 1013 b And
http://codeforces.com/contest/1013/problem/B 假设一个 k , 与 x 按位与 得到了k1 ,k1再和x按位与 是不是还是k1 呀知道这个就可以了答案只有-1 0 1 2 #include<bits/stdc++.h>using namespace std;int a[111111];int b[11...
2018-07-31 20:03:22 173
原创 codeforces 1013 A Piles With Stones
http://codeforces.com/contest/1013/problem/A只要看第二次的总和没有比第一次还大即可 #include<bits/stdc++.h>using namespace std;int main(){ int n; while(cin>>n) { int a; int s1=0;...
2018-07-31 20:01:10 269
原创 hdu 5451 Best Solver(循环节+共轭构造)
http://acm.hdu.edu.cn/showproblem.php?pid=5451 如果指数不是那么大的话,就和那个SO EAST那道题一样的用矩阵快速幂来做但是指数是2的2的31次方那么大,底数还是个无理数, 降幂不能看了别人的优秀代码 ,发现是寻找循环节.因为模数很小.对于每一个模数,都有自己的循环节.向上取整的递推公式是 Cn=10*Cn-1 -Cn-2 ...
2018-07-31 16:22:35 248
原创 hdu 4565 So Easy!(共轭构造+矩阵快速幂)
http://acm.hdu.edu.cn/showproblem.php?pid=4565我们构造这么一个东西Cn=(a+sqrt(b))^n+(a-sqrt(b))^n因为是共轭的,所以Cn是一个整数,且因为a*a>b的所以后面那个式子就是一个小于1的数,那么Cn为我们所求.将 Cn乘上(a+sqrt(b))+(a-sqrt(b))可以得到 2*a*Cn=Cn+1...
2018-07-31 15:57:02 164
原创 2018 Multi-University Training Contest 3
hdu 6322 Problem D. Euler Function定义一类数,该类数的欧拉函数都是合数,需要求第k大的该类数打表发现 5 7 8 9 10 11 12 13 。。。。。所以第1大为5 特判一下,之后都是连续的。#include<bits/stdc++.h>using namespace std;long long dp[100010];v...
2018-07-30 18:45:13 227
原创 牛客练习赛23 F 托米的游戏(期望)
https://www.nowcoder.com/acm/contest/156/F 对于每一个点的贡献为 1/它的深度。 至于为啥是这样的,对于每一种全局的情况,每个点的概率都不是相同的,都会随着别的点的取或不取而改变,那么我们再单独看一个点的时候,就应该只看这条路径上的深度。至于为什么是这样,我都是瞎说的。。。 #include<bits/stdc++.h>...
2018-07-30 10:25:39 194
原创 2018牛客多校4
A Ternary String上图中的最后两行的最后面的%c 应该是大写的 不应该是在指数上%c而且 在递归过程中 b是永远小于phi的 而且因为-3的存在,会出现返回负数的情况,所以取模的时候要加上一个模数的5倍 。。6 7 8 9 10...倍都可以。。#include <bits/stdc++.h>using namespace std;typedef...
2018-07-29 19:50:35 189
原创 2018牛客多校3
H Diff-prime Pairs1*3 1*5 1*7 1*11.。。。。。2*3 2*5 2*7 2*11.。。。。。3*3 3*5 3*7 3*11.。。。。4*3 4*5 4*7 4*11.。。。。打个素数表 ,用素数筛一遍 #include<bits/stdc++.h>using namespace std;bool a[1111111...
2018-07-27 18:02:07 218
原创 2018 Multi-University Training Contest 2
hdu 6312 Game 可以自己从1-8试一下,发现alice必赢。输出yes即可 #include<bits/stdc++.h>using namespace std;int main(){ int n; while(cin>>n) { cout<<"Yes"<<endl; ...
2018-07-26 10:19:49 239
原创 2018 Multi-University Training Contest 1
hdu 6298 Maximum Multiple题目要求把n拆成3个数,且都是n的因子切求和为n 其要求输出的3个数的乘积最大那么就要把这3个数尽量靠近,1:1:1为最好,但如果不能拆成这样的话,就要想到1:1:2这种情况,因为111的情况下,1+1+1=3且1|3,112的情况下 1+1+2=4且1|4,2|4 所以122是不行的,因为1+2+2=5,但是2不能整除5所以只有n...
2018-07-23 19:24:29 162 2
原创 2018牛客网 多校1
J Different Integers 将原数组复制加到尾部,1-l,r-n的区间就变成r-n+l了然后线段树处理不同数字个数 #include<iostream>#include<algorithm>#include<cstring>#include<stdio.h>#include<map>us...
2018-07-23 18:59:51 235
原创 牛客小白月赛5 H J I D G A F
https://www.nowcoder.com/acm/contest/135#question 以下题目都需要注意会不会爆long long 会不会c++输入输出超时以及 “ ~ ”H 求a和b的最小公倍数,a*b/gcd(a,b)#include<bits/stdc++.h>using namespace std;long long a[1111...
2018-07-23 10:25:46 297
原创 hihocoder 1789 阶乘问题(数论)
http://hihocoder.com/problemset/problem/1789 求一个最大的整数 m,使得 k^m 是 n! 的约数我们可以看成是k^m*x=n!,且m为最大了,那意味着x不能拆成k*y了,所以我们就只要求n!中每个乘数拆成若干个质数相乘,然后求这些质数能组成多少个k。因为是质数,所以都是互不干扰的,不存在重复的问题。因此我们可以先求k是由哪些质数相乘...
2018-07-23 09:53:24 252
原创 hihocoder1791 幸运数字(数位dp) 也是The 2018 ACM-ICPC上海大(家)都会赛 J Beautiful Numbers
http://hihocoder.com/problemset/problem/1791 题目求的是1-n中有多少个数能够整除它自己各数位上的数之和。因为n的范围到1e12所以这道题中各数位相加的和最大也是99所以我们可以枚举1-99,求1-n中有多少数各数位和为i且能整除i ,就和那道B-Number一样了,只不过是进行99次数位dp而已。 #includ...
2018-07-22 15:54:56 630
原创 hdu 3652 B-number(数位dp)
http://acm.hdu.edu.cn/showproblem.php?pid=3652 主要是2个状态,一个是对13取余情况,一个是第pos位时的前一位是1还是以及有13了还是什么也没有。这样根据这一状态就可以去枚举下一位了。 #include<bits/stdc++.h>using namespace std;int dp[20][15][3];...
2018-07-22 15:34:42 93
原创 hdu 4734 F(x) (数位dp)
http://acm.hdu.edu.cn/showproblem.php?pid=4734 这道题的dp数组存的实际上是低某些位能凑到sum的种类数,虽然仍然是从高位到低位遍历因为A是会变得,但是低位能凑到多少是不变的,所以这样反过来想的话就不需要重新memset了。这也是数位dp优化中的一个重要思想。 #include<bits/stdc++.h>usi...
2018-07-22 15:32:10 106
原创 hdu 2089 不要62 (数位dp+模版)
http://acm.hdu.edu.cn/showproblem.php?pid=2089 https://blog.csdn.net/wust_zzwh/article/details/52100392这个博客讲的很细,点赞! 数位dp就是一种穷举方式,然后结合记忆化搜索来优化时间。从高位到低位枚举。dp数组存的其实是从不同的高位枚举到这个状态下计的数,并且不受前面...
2018-07-22 15:24:17 103
原创 zoj 4041 Chasing(三分)
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4041 如果需要再一个抛物线的函数中找到最高点,就需要三分了。这道题同理 #include<iostream>#include<cmath>#include<cstring>#include<cstdio&...
2018-07-19 09:55:12 282
原创 AtCoder - 4167 Equal Cut(2分)
https://arc100.contest.atcoder.jp/tasks/arc100_b?lang=en 二分 ;因为要切3刀,我们先枚举中间的刀。然后二分两边的刀,让两边的2部分尽量相等,算一个答案,每次枚举就会得到一个答案。取最小即可。 #include<map>#include<stack>#include<queue&...
2018-07-19 09:51:38 347
原创 Codeforces 1009e Intercity Travelling
http://codeforces.com/problemset/problem/1009/E 把n从2到5的情况都列出来会发现n每次加1 就只是在最高位加一个数字n=2 即1 3n=3 即1 3 8n=5 即1 3 8 20 48规律就是cs[k]=cs[k-1]*3-(k-2)的前缀和 #include<map>#include<st...
2018-07-19 09:42:51 167
原创 poj1679 The Unique MST(次小生成树)
http://poj.org/problem?id=1679给出一些边,求最小生成树是不是唯一的。思路就是求次小生成树与最小生成树是否相同。如何求次小生成树呢,假设已经有n-1条边被选择了,我们就需要用别的没有用上的边来替换已选择的边。用一个二维数组记录点与点之间权值最大的边,用这2点之间没用上的边来换掉,这样就可以求得一个新的生成树的长度。我们求这个值的最小,即次小生成树的长度。然后比较一下次小...
2018-07-16 10:19:27 107
转载 poj 1639 Picnic Planning(具有限度的最小生成树,挺难)
http://poj.org/problem?id=1639转自https://blog.csdn.net/u011265346/article/details/42919889#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>#include ...
2018-07-15 14:08:01 179
原创 poj3635 Full Tank?(dp+bfs/dij)
http://poj.org/problem?id=3635给一张图,n个点,m条无向边,每个点都有自己的油价,每条路都需要消耗相应体积的油。q次询问,问一个小车,给定起点终点以及油箱容量,问到达终点的最小花费。懵了!看了下题解,是dp加bfs或者是dijdp[i][j]是指到达i点剩j体积的油量的最小花费。因为油最多只有100,所以可以这么做。对于每一个状态,我们可以有2个选择,1 在这个点加1...
2018-07-14 10:31:13 378
原创 poj 3621 Sightseeing Cows(01划分+spfa)
http://poj.org/problem?id=3621关于01划分问题https://blog.csdn.net/gengmingrui/article/details/47443705这个blog讲的已经很清楚了 受益良多用spfa是为了判负权环,如果一个点被压入栈中超过n次,就代表有一个负权环路。做题中遇到了一些问题:1 poj上交题需要选择C++而不是 G++可能在双精度运算上有误...
2018-07-13 11:47:13 202
原创 POJ 3613 Cow Relays (floyd+快速幂)
http://poj.org/problem?id=3613我们都知道如果单纯的求从s点到e点恰好经过k条边的路径数量。就直接将01表进行k次幂即可。那么如果是求最短路径长度呢。那就是把邻接矩阵进行k次floyd即可。具体解释比较复杂。记住即可。k最大有1000000.所以快速幂一下,只要将矩阵相乘那一段,改成floyd即可真是奇妙。#include<iostream>#includ...
2018-07-11 11:01:20 136
原创 POJ 3463 Sightseeing(dijkstra)
http://poj.org/problem?id=3463这道题可以加深对dijkstra的理解;题意要求找出最短路以及比最短路长1的路径数量;我们都知道dijkstra是利用每次找出最短的一条边去松弛到别的点距离。这道题我们就需要每次从起点到别的点的最短路径以及次短路径中找到一个最短的边去松弛起点到别的点的最短路径或者次短路径;不过就是数组多了一行次短路的状态。最后判一下次短路的长度是不是最短...
2018-07-11 10:10:24 132
原创 Codeforces Round #496 (Div. 3) ABCDE1
http://codeforces.com/contest/1005id:threeh20A数1出现的个数,水题B从尾部遍历记录后缀一样部分的长度C用map记录哪些数字出现过,并且出现了几次。然后对于每一个数字,用2^0-2^32这32个数字去减,看剩下的数字在map中存不存在。要注意如果剩下的数字和本来这个数字一样,那么map的值应该>1 才可以Ddp[i]记录前i个中能够分割出能被三整除...
2018-07-10 10:23:40 195
原创 Poj2449 Remmarguts' Date(SPFA+第k短路+A*)
http://poj.org/problem?id=2449根据A*f(p)=g(p)+h(p)g(p)就是p点到s点最短距离h(p)就是p点到t点的距离h(p)的求法就是将边反过来求一遍单源最短路即可。为什么要用A*?A*的作用就是将普通的bfs变得更加智能,我们可以通过改变h函数来达到我们希望的效果。这道题,我们要求第K短路,那么怎么去求呢。思路就是利用A*,将较短的路径上的点放在前面去跑。这...
2018-07-10 10:10:35 171
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人