- 博客(316)
- 收藏
- 关注
原创 Forethought Future Cup - Elimination Round C&D
文章目录C. Tree DiameterD - Frog JumpingC. Tree Diameter题意: 有一个n个点的树,但我们不知道树的形态,需要求树的直径,你可以进行不大于10次询问,每次询问包含两个集合 x,y ,(x 与y交集为空), 之后会给出x集合中的点到y集合中的点最远的距离分析: 本题的关键就是划分集合,你需要进行的10次询问必须将任意两个点的距离都清楚,这时候有趣的...
2019-04-29 21:59:56
341
原创 G tsy's number
文章目录tsy’s number 推公式看这里https://www.cnblogs.com/acjiumeng/p/10743919.html推出来公式为∑t=1(t)3∗⌊nt⌋3∗(⌊nt⌋+1)2∗(⌊nt⌋∗2+1)12∑d∣tϕ(d)∗μ(td)\sum_{t=1}(t)^3*\frac{{\left \lfloor \frac{n}{t} \right \rfloor}^3...
2019-04-24 01:41:08
260
原创 2019 icpc nanchagn invitation 题解
文章目录D. Match Stick GameI. Max answerJ Distance on the treeE card GameD. Match Stick Gamehttps://blog.csdn.net/weixin_38686780/article/details/89459343I. Max answerhttps://blog.csdn.net/weixin_3868...
2019-04-22 20:00:23
279
原创 D. Match Stick Game
文章目录D. Match Stick Game分析D. Match Stick Game分析赛中也不会做,赛后别人说是dp,也思考了好一会儿,本来以为代码会比较难码,结果一发就过了#include <bits/stdc++.h>#define mem(ar,num) memset(ar,num,sizeof(ar))#define me(ar) memset(ar,0,s...
2019-04-22 19:48:48
402
原创 ICPC nangchan I. Max answer
文章目录I. Max answer分析代码I. Max answer分析题意: 定义一个区间的值为这个区间最小值乘以区间和分析:我们要枚举每一个值作为区间最小值时的贡献即可,这样不会漏掉任何情况,但是我们需要统计一个信息,确定了区间最小值,我们还要枚举这个区间,这个区间的最小值已经确定,但是左右边界却不知道,怎么确定左右边界呢?1.单调栈可以统计一个值作为区间最小值左右端点的信息,不清楚...
2019-04-22 17:45:18
536
原创 icpc nanchang J Distance on the tree
J Distance on the treezxy好弱啊,赛中分析好久也没想出来,结果题解出来发现我是个大傻逼,这个题我在刚刚过去的icpc省赛补过,再次出我就不会了,啊啊啊啊,我好弱啊题意: 每次在树上查询 从u -v 路径上的边的权值小于k的边有多少个分析:我们发现每次查询可以化简成,查询每个节点到根有多少个,然后求出u,v的lca, ans(u) +ans(v)-2*ans(lca(u...
2019-04-22 00:38:59
189
原创 ICPC nanchang invitation E card Game
ICPC nanchang invitation E card Game根据以上我们得出SG函数,当SG函数异或和为0时,先手必输,我们记录一下位置,然后就可以愉快的博弈了**#include<bits/stdc++.h>using namespace std;const int maxn = 200000+100;int a[maxn],b[maxn],sum[ma...
2019-04-20 18:38:07
351
原创 Codeforces Round #553 (Div. 2)
文章目录A Maxim and BiologyB Dima and a Bad XORC Problem for NazarD - Stas and the Queue at the BuffetE - Number of ComponentsF - Sonya and Informatics这次打的不错,除了B少了break fst了,其他还好,分享一下我的做法Codeforces Roun...
2019-04-19 13:13:46
865
5
原创 bitset在算法竞赛中的应用
文章目录bitset 使用 - 为了更块的暴力1 bitset库2 bitset 用法集合求交并的计数运算bitset 使用 - 为了更块的暴力1 bitset库bitset的基本操作2 bitset 用法集合求交并的计数运算可达性统计1 ASC28J题意:给定一个有向图的邻接矩阵,求有多少个,三元环,即A−>B−>C−>AA-&g...
2019-04-18 14:15:38
1392
原创 2050 Programming Competition
相似题目推荐洛谷P1156dp[i][j] 代表前i个挑战,选择了j个,最大的体力值是多少#include <bits/stdc++.h>#define mem(ar,num) memset(ar,num,sizeof(ar))#define me(ar) memset(ar,0,sizeof(ar))#define lowbit(x) (x&(-x))#defi...
2019-04-17 20:25:17
198
原创 c++ 大数
#include<iostream>#include<cstring>#include<iomanip>#include<algorithm>#include<cstdlib>#include<cstdio>using namespace std; #define MAXN 9999#define MAXSI...
2019-04-16 20:32:19
526
原创 河南省ccpc省赛F题
2527: THE END IS COMING!!!我们只有 5 种元素,所以可以全部分开考虑每种元素单独考虑每个点拆成两部分,一个用于接受元素,一个用于往外送元素。源点向每个点的接受元素部分建立流量为当前节点需要元素数量,费用为 1 的边。向用于外送元素的部分建立流量为当前节点需要元素数量,费用为 0 的边。外送元素部分向所有能及时赶到的部分建立流量为正无穷,费用为 0 的边,意味着...
2019-04-16 00:38:39
225
原创 “卓见杯”第五届CCPC中国大学生程序设计竞赛河南省赛
文章目录“卓见杯”第五届CCPC中国大学生程序设计竞赛河南省赛A 最大下降矩阵D 文本修正E咕咕的的复复读读机机H 咕咕的搜索序列I Childhood dream“卓见杯”第五届CCPC中国大学生程序设计竞赛河南省赛又被cy和学长踩爆了A 最大下降矩阵最长下降子序列,简单dp题,第一开始数据错了#include <bits/stdc++.h>using namespace...
2019-04-14 13:13:15
1815
1
原创 5 2018-2019 ACM-ICPC, Asia Seoul Regional Contest
2018-2019 ACM-ICPC, Asia Seoul Regional ContestA Circuits扫描线+线段树const int maxn = 3e5+10;vector<int> beg[maxn],en[maxn];int a[maxn],b[maxn];// b用于离散化int y[maxn][2];#define lson (o<<...
2019-04-12 22:13:00
1286
原创 分块
文章目录分块1 区间修改,区间查询蒲公英 BZOJ2724磁力块分块当维护的信息不满足区间可加,可减性的时候,用线段树或者树状数组维护的时候较为困难,通过分块划分+预处理可以有效的解决一些问题1 区间修改,区间查询A Simple Problem with Integers POJ - 3468将1… n 分成n\sqrt{n}n块,每块大小n\sqrt{n}n,对于每次修改或者查询...
2019-04-11 22:11:56
151
原创 J - The Big Painting Gym - 100783J
J - The Big Painting Gym - 100783J二维hash匹配ULL mod1 = 1e10+7;ULL mod2 = 1e11+7;const int maxn = 2000+10;ULL gen,b[maxn],pm1[maxn],pm2[maxn];char ar[maxn][maxn],br[maxn][maxn];int r,c,n,m;void G...
2019-04-10 01:27:26
295
原创 训练赛4-2014-2015 ACM-ICPC Southwestern Europe Regional Contest (SWERC 14)
文章目录2014-2015 ACM-ICPC Southwestern Europe Regional Contest (SWERC 14)A GREAT+SWERC=PORTOBCDJ2014-2015 ACM-ICPC Southwestern Europe Regional Contest (SWERC 14)[代码](A GREAT+SWERC=PORTO直接nxt_permu...
2019-04-10 00:19:07
643
原创 ACM训练联盟周赛第二场
#ACM训练联盟周赛第二场ACM训练联盟周赛第二场A格式化输出B. Zeratul与塔防游戏先预处理出来覆盖每一个点的区间的最远右端点是多少,然后二分答案,并从1…m扫,如果不满足就修改从i 到nxt[i]到满足 B.cppC 凉菜鸡不会线段树莫队+字典树,黄学长上来就秒了,tqlD Dungeon♂Master组合数学tql,看不出来E 暖气管道双连通分量+dp...
2019-04-07 17:12:47
312
原创 P1013 进制位
P1013 进制位#include <bits/stdc++.h>using namespace std;const int maxn = 10;string ar[maxn][maxn];map<char,int> num;int n;int Get(string s){ int sum = 0; for(int i = 0;i < ...
2019-04-01 17:18:32
304
原创 python 3 自定义sort
文章目录python 3 自定义sort数字定义排序python 3 自定义sortpython3 自定义sort 不同于c++,不能用传入cmp函数来实现比较a,b,而是需要一个key ,利用这个key 计算出当前的值,然后再进行排序,所以比较坑爹了数字定义排序a = [3,2,1]a.sort() # 默认从小到大a = [103,2,101] # 如果想要按个位从小到大怎么办呢?...
2019-03-29 02:10:25
3925
原创 Snowflake Snow Snowflakes
文章目录Snowflake Snow SnowflakesSnowflake Snow Snowflakes题意: 给定一个n个六边形雪花,判定收存在相同的分析: 链表hashconst int P = 99991;const int maxn = 100000+100;int snow[maxn][6],tot;int head[maxn],nxt[maxn];int cal...
2019-03-28 23:50:19
750
原创 0701 国王游戏
文章目录0701 国王游戏0701 国王游戏按照x*y 从小到大排序,注意大数,这里提供python 代码import functoolsclass myclass: a,b = 0,0def cmp1(x,y): return x.a*x.b < y.a*y.bn = int(input())x,y = map(int,input().split())a =...
2019-03-28 21:11:30
245
原创 M × N Puzzle POJ - 2893
文章目录M × N Puzzle POJ - 2893树状数组求逆序数归并排序求逆序数M × N Puzzle POJ - 2893如果m-1 为偶数,则无论上下左右移动都不会影响逆序对数的奇偶性如果m-1为奇数,上下移动会使得逆序对数的奇偶性改变,判断当前空格的行数和最后的行数的差值与逆序对数的奇偶性是否相同即可树状数组求逆序数const int maxn = 1e6+10;i...
2019-03-28 00:57:41
272
原创 康托展开
康托展开int cantor(int a[],int n){//cantor展开,n表示是n位的全排列,a[]表示全排列的数 int ans=0,sum=0; for(int i=1;i<n;i++){ for(int j=i+1;j<=n;j++) if(a[j]<a[i]) sum++;...
2019-03-27 22:19:57
138
原创 八数码问题
文章目录#include <bits/stdc++.h>#define mem(ar,num) memset(ar,num,sizeof(ar))#define me(ar) memset(ar,0,sizeof(ar))#define lowbit(x) (x&(-x))#define Pb push_back#define FI first#define ...
2019-03-27 22:02:00
174
转载 差分在ACM竞赛中的应用
差分在ACM竞赛中的应用众所周知,前缀和是差是原序列,差分的合适原序列B是A的差分数组B[1]=A[1],B[i]=A[i]−A[i−1](2<=i<=n) B[1] = A[1],B[i] = A[i]-A[i-1](2<=i<=n)B[1]=A[1],B[i]=A[i]−A[i−1](2<=i<=n)0304 IncD...
2019-03-26 19:12:26
1728
原创 D. Flood Fill &&F. Clear the String
文章目录Codeforces Round #538 (Div. 2)D. Flood Fill GAEducational Codeforces Round 61 (Rated for Div. 2)F - Clear the StringCodeforces Round #538 (Div. 2)D. Flood Fill GAEducational Codeforces Round...
2019-03-20 22:39:08
247
原创 51nod1989 竞赛表格
文章目录1989 竞赛表格1989 竞赛表格// 知识点1,rev函数进行反转// 知识点2,分析反转之后的数字结构,// 例如 /* a + rev(a) = 2*a ab+ ba = 11*(a+b) abc + cba = 101*(a+c)+20*d abcd + dcba = 1001(a+d)+110*(...
2019-03-20 11:18:53
187
原创 树形dp
文章目录树形dp没有上司的舞会树形dp给定一个N个节点的树(无根树或者有根树),我们可以选择一个节点为根进行dfs求得树的结构,作状态转移就由深到浅,由叶子节点向根进行dp没有上司的舞会1代表取当前的,0代表不取当前节点dp[fa][0]+=max(dp[son][1],dp[son][0]);dp[fa][0] += max(dp[son][1],dp[son][0]);dp[fa][...
2019-03-19 21:48:17
170
原创 ACM小技巧总结
文章目录ACM小技巧总结取模ACM小技巧总结取模我们经常会对很大的数进行1e9+7的取模运算,但是取模运算其实非常慢,如果取模非常多在运算中花费主要时间,可以进行一定的优化例如 a,b< 1e9+7 for(int i =1;i <= 1000000; ++i) c = (a+b)%mod 非常耗时间但如果使用for(int i = 1;i <= 100000...
2019-03-18 12:43:12
282
原创 D. Destroy the Colony
文章目录D. Destroy the Colony题意:分析D. Destroy the Colony题意:给定一个长度为偶数的字符串,将字符串分成长度相等的两个字符串,要求同一种字符必须在同一个字符串里面,给出Q个查询,每次要去第x个字符和第y个字符必须在同一组内分析可以明显看出这是一个背包问题,背包的容量是n/2,先不考虑指定的字符,那么总共有多少种方法?(n/2)!2∗dp[52...
2019-03-18 12:23:54
314
原创 L3-018 森森美图
L3-018 森森美图#include<bits/stdc++.h>using namespace std;typedef pair<double,int> P;#define FI first#define SE secondint dr[2][4] = {0,0,1,-1,-1,1,0,0};int dr2[2][4] = {1,1,-1,-1,-1,1...
2019-03-14 21:18:30
521
原创 L3-020 至多删三个字符 (30 分)
L3-020 至多删三个字符 (30 分)题意:分析:dp[i][j]表示前i里面删除了j个有多少种方法dp[i][j] 表示前i里面删除了j个有多少种方法dp[i][j]表示前i里面删除了j个有多少种方法第i个删除或者不删除有两种情况dp[i][j]=dp[i−1][j]+dp[i−1][j−1]dp[i][j] = dp[i-1][j]+dp[i-1][j-1]dp[i][j]=d...
2019-03-12 18:01:37
1667
原创 L3-015 球队“食物链” (30 分)
const int maxn = 30;int ans[maxn],N;char Ma[maxn][maxn];bool vis[maxn];bool dfs(int u,int d){ bool yes = false; for(int i = 0;i &amp;lt; N; ++i) if(!vis[i] &amp;amp;&amp;amp;(Ma[i][0] == ...
2019-03-11 13:32:37
585
原创 L3-002. 堆栈
L3-002. 堆栈模拟堆栈+树状数组const int maxn = 1e5+10;int tree[maxn];int a[maxn];void Add(int x,int p)//{ while(x < maxn) { tree[x] += p; x += lowbit(x); }...
2019-03-10 17:33:44
165
原创 L3-001 凑零钱
动态规划+记录方案const int maxn = 1e4+10,maxm = 1e2+10;int dp[maxn][maxm];int fa[maxm];int a[maxn];int main(void){ int N,M;cin>>N>>M; for(int i = 1;i <= N; ++i) cin>>...
2019-03-10 11:17:46
189
原创 L2-018 多项式A除以B (25 分)
模拟多项式除法,其实挺简单的,不要被吓怕了typedef pair<int,double> P;const int maxn = 1e5+10;double a[maxn],b[maxn];double c[maxn],d[maxn];int main(void){ int n,m;cin>>n; int maxn1 = 0,maxn2= 0; rep...
2019-03-09 20:55:05
634
原创 L1-002 打印沙漏 (20 分)
#include<bits/stdc++.h>using namespace std;int main(void){ int N;char c; cin>>N>>c; if(N == 0) return 0*printf("0"); int n = 1,sum = 1; for(int i = 2;; ++i){ sum += (2*i-...
2019-03-06 16:20:45
507
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人