摘要:
题意:一个数,如果满足奇数的数字出现偶数次,偶数的数字出现奇数次, 就是符合的数,注比如:12313 就满足,因为1 3出现了偶数次。2出现了奇数次 思路,对于这道题,就是状态压缩加dp; 对于一个数字来说,0~9每一位,都只有3种状态量,要么从未出现,要么出现次数为奇 要么为偶,所以可以用3进制来 阅读全文
摘要:
数位DP的问法是从某个数到某个数的区间里,求出满足题目要求的个数; 如本题所说的不要62和4,就是求出这个区间内,满足这一条件的数; 比如问 6 199的这个区间内满足条件的数,那么就求出1到199满足的数减去1到(6-1)满足的数即可; 那么 具体怎么从操作呢? 首先,我们先求出这个数的a[]数组 阅读全文
摘要:
判断方面,没有了割点的root的特判,并且==号去掉 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 const int maxn=1 阅读全文
摘要:
. 1 #include<bits/stdc++.h> 2 #define mp(i,j) make_pair(i,j) 3 #define P pair<int,int> 4 using namespace std; 5 const int inf=0x3f3f3f3f; 6 const int 阅读全文
摘要:
1 //拓扑排序判断是否有环 2 #include<cstdio> 3 #include<algorithm> 4 #include<string.h> 5 #include<math.h> 6 #include<queue> 7 using namespace std; 8 typedef lon 阅读全文
摘要:
Fibonacci数列的递推公式为 : f[n]=f[n-1]+f[n-1] f[1]=1 f[2]=1 矩阵形式的递推公式为: 即 1 //通过矩阵快速幂来计算快速计算斐波那契额数列的步骤为 2 //初始化单位矩阵,根据式子求出A.a[][](本题为通过f[n]=f[n-1]+f[n-2]) 3 阅读全文
摘要:
https://codeforces.com/contest/1243/problem/D 总结 :题目求的就是补图的连通块-1。首先可以把1~n个点都存放到set的s中。当某个点没有被访问过的时候,就调用bfs函数,从s中删除,因为这个点已经访问了,并且加入到队列中。寻找在补图中和这个点相连的,遍 阅读全文
摘要:
int类型 1 int Read() 2 { 3 int fu=1,ret=0; 4 char c=getchar(); 5 while(c<'0'||c>'9') 6 { 7 if(c=='-') 8 fu=-1; 9 c=getchar(); 10 } 11 while(c>='0'&&c<=' 阅读全文
摘要:
这道题跟求最大流的时候差不多。 都是先构造可行流,然后判断是否可行, 可行的话,就利用残余流量,构造从汇点t跑到源点s的最大流, 如何求出答案呢。 在第一次求可行流的dinic后,跟求最大流的时候一样,从t到s是可行流的流量; 这个时候t到s的反向边,也就是s到t的流量就是t到s流的量(因为t到s定 阅读全文
摘要:
题意:现在的网络有一个源点s和汇点t,求出一个流使得源点的总流出量等于汇点的总流入量,其他的点满足流量守恒,而且每条边的流量满足上界和下界限制. 思路:要满足每一个点的流量守恒,我们可以尝试像无源汇上下界可行流一样,跑一次dinic先构造出这样一个的可行流。在保证他可行的情况下,利用残余流量 从s到 阅读全文