上一页 1 ··· 7 8 9 10 11 12 13 下一页
摘要: 和nim游戏类似易证必败状态为:当前打开的箱子中石子异或和为0,没打开的箱子中不存在一个子集满足异或和为0因为先手无论是取石子还是开箱子,后手都可以通过取石子来使状态变回原状态所以只需判定是否有子集异或和等于零即可#include#include#include#in... 阅读全文
posted @ 2017-07-30 20:36 Ren_Ivan 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 可以发现,该数组的mi就是斐波那契数列所以要矩阵快速幂搞出第n位但是斐波那契数列上涨的很快,这就需要欧拉定理了p^phi(q)%q=1(gcd(p,q)==1)p是素数,所以可以用然后需要5000个数的phi,q#include#include#include#inc... 阅读全文
posted @ 2017-07-30 14:30 Ren_Ivan 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 二分答案,网络流判断将每个门拆点,每个人连向每个门的dis~当前解然后跑最大流,如果等于人数,即为可行解#include#include#include#include#include#include#define pa pair#define N 405#defin... 阅读全文
posted @ 2017-07-29 21:21 Ren_Ivan 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给出一个图中点的两两距离,问是否是一棵树,若是,求出平均边权最大的点prim最小生成树,若原图是树,则最小生成树的距离就是原距离。否则不是。搞出来树了,第二问随便dfs就好了。#include#include#include#include#include#... 阅读全文
posted @ 2017-07-28 21:43 Ren_Ivan 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 看范围,状压没毛病 但是如果随便连的话给开1#define mod 1000000007using namespace std;int n,m,K,bit[12];long long f[35][35][515];int main(){ bit[0]=1; fo... 阅读全文
posted @ 2017-07-28 18:03 Ren_Ivan 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 树状数组优化dp可以证明最优解一定是通过之前的最优转移过来的,所以每一个点只需要保存以该节点为结尾的最长长度即可对于不同符号,等于号维护数组,大于小于维护树状数组#include#include#include#include#include#define N 500... 阅读全文
posted @ 2017-07-27 21:08 Ren_Ivan 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 深搜+模拟需要剪枝:同一移动向右移了就不需要向左移了#include#include#include#include#includeusing namespace std;int n,bo[6][8],tot,a[6][6][8],b[6][3];bool boo;... 阅读全文
posted @ 2017-07-27 21:04 Ren_Ivan 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 看题就像矩阵乘但是1000的数据无从下手打表发现每一行的数都是一样的,只不过是错位的,好像叫什么循环矩阵于是都可以转化为一行的,O(n3)->O(n2)*logk#include#include#include#include#includeusing namespa... 阅读全文
posted @ 2017-07-27 20:02 Ren_Ivan 阅读(128) 评论(0) 推荐(0) 编辑
摘要: f[i]:当前已拥有i种邮票,还需要买的邮票数的期望值。g[i]:当前已拥有i种邮票,还需要的钱的期望值。每张邮票初始都是1元钱,每买一张邮票,还没购买的邮票每张都涨价1元。 f[i]=1+(n-i)/n*f[i+1]+i/n*f[i]--->>f[i]=f[i+1]... 阅读全文
posted @ 2017-07-27 12:22 Ren_Ivan 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 按照dfs序分块,莫队乱搞再套个权值分块#include#include#include#include#include#define N 100005using namespace std; int e=1,head[N];struct edge{ int u... 阅读全文
posted @ 2017-07-27 12:15 Ren_Ivan 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 贪心,每次如果够直接卖,不够找到之前的卖出的最多的一份,然后反悔不过反悔的确是很好的策略!#include#include#include#include#include#include#define N 250005using namespace std;prior... 阅读全文
posted @ 2017-07-25 21:43 Ren_Ivan 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 莫队+树状数组#include#include#include#include#include#define N 100055#define M 1000066using namespace std;int gy[N],be[N],c[M],cc[M],n,m,nn,... 阅读全文
posted @ 2017-07-25 21:40 Ren_Ivan 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 求逆序对个数,莫队套树状数组#include#include#include#include#include#define N 50005using namespace std;int n,m,nn,a[N],c[5000005],be[N],maxn;struct ... 阅读全文
posted @ 2017-07-25 21:38 Ren_Ivan 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 带修改莫队,每次查询前调整修改#include#include#include#include#include#define N 20005using namespace std;int n,m,nn,a[N],be[N],l,r,num[1000005],tot,q... 阅读全文
posted @ 2017-07-25 21:36 Ren_Ivan 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 可以发现:f[i]转移到f[i+1]只和最后一串1的长度和平方有关,因为如果新加的位置是1,贡献就是(x+1)^3-x^3=3x^2+3x+1,否则为0;所以对于每一个位置,处理出期望的f,x和x^2(x表示最后一串1的长度)即可#include#define N 1... 阅读全文
posted @ 2017-07-22 14:03 Ren_Ivan 阅读(138) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 下一页