自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

野生的TFgirl

厚厚一堵墙,却挡不住心底的月光。

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 奇怪的不知道对不对的二分图最大匹配算法=_=

//二分图最大匹配不知道什么算法=_=//时间复杂度未知,但是比匈牙利算法快,貌似比hk算法也快=_=//过了hdu1045,hdu1068两个二分图匹配板题,其他题还没试//仅适用于求二分最大匹配值,以及任意一种输出方案,字典序神马的未知bool vis[N],found;int line[N],l[N];//序号1~nvoid dfs(int u,int m){ f

2015-08-26 17:12:38 452

原创 CF571C-CNF 2

//CF571C-CNF 2//遇上了一个奇怪的二分匹配算法//x集合是变量,y集合是析取式//因为一个变量最多有两条边,如果变量的两条边都是同一性质,都是本身,或都是反变量,变量的值可直接得出//剩下的就是只有一条边,或两条性质不同的边,性质不同只能选一个,所以就变成了二分图的最大匹配问题//二分图匹配的匈牙利算法和Hopcroft-Krap算法都会T//看到一个歪果仁的匹配算法,不

2015-08-26 16:41:59 633

原创 CF571B-Minimization

//571B-Minimization//对于最终的序列A//可以分成k个组,即序列中模k同余的为一组//有n%k个长度为n/k+1的组,k-n%k个长度为n/k的组//对于同一个组而言,求相邻数的差的和的最小值。//只有每组内的元素都是有序的,每组内的相邻元素的差值才会最小//对于有序序列,值为max-min//无序的序列,可以划掉有序的部分(即bi<bi+1<bi+2,可以去掉b

2015-08-25 12:10:26 776

原创 CF571A - Lengthening Sticks(容斥)

//571A - Lengthening Sticks//数学题,容斥原理//总的选择数C(l+3,3) la+lb+lc+unused=l;//确定最长边,酱紫不构成三角形的充分必要条件就为 最长边>=其他两边和//枚举最长边增量i,其他两边为b+lb,c+lc//a+la>=b+lb+c+lc lb+lc<=l-la;//x=min(a+la-b-c,l-la);//则不构

2015-08-25 09:23:41 515

原创 codeforces 559C Gerald and Giant Chess(组合数学)

//CF559C//1.从(0,0)到(x,y)的方法数为C(x+y,x);//2.转换成总的种数-k个禁走点的方法数*k的禁走点到终点的方法数。//这里的k个禁走点的方法数不经过之前的禁走点,所以相互独立//3.大组合数取模公式 C(x+y,x)=(x+y)!/(x!*y!)//4 (a/b)%mod = a*b^(mod-2)%mod;#include#include#incl

2015-08-09 18:25:12 528

原创 Codeforces567F. Mausoleum(DP)

//考虑从大到小向序列中放置数字(两个两个的放),小的数字肯定在大的数字两旁。//比如当前放置i 有三种情况,两左,一左一右,两右。//令dp[l][r]表示l~r的放置种数(从n开始放置,放了(r-l+1)/2 个数字(每次放两个))//那么转移方程实际上就是dp[l][r]=(A)dp[l-2][r]+(B)dp[l+1][r-1]+(C)dp[l][r-2];//这三种情况都会更新到

2015-08-08 13:18:28 1222

原创 CodeForces 567E President and Roads(最短路 + tarjan求桥)

//最短路+桥#include#include#include#includeusing namespace std;typedef long long LL;const int M=100100,N=100010;const LL INF=0x7fffffffffffff;struct Edge{ int from,to,cap,next; int id;}e

2015-08-07 21:46:53 598

原创 hdu 5352MZL's City(15多校第五场1010)

//15多校第五场//hdu 5352//对于每次选点,可能会有重叠//每次选点是独立的,待选择点也是独立的//所以可以把所有的选择情况看成一张二分图//对每一个X点,最多匹配K个Y点//匈牙利算法即可。#include#include#include#include#include#include #includeusing namespace std;const

2015-08-05 20:49:00 421

原创 hdu 5351 MZL's Border(15多校第五场1009)

//hdu 5351 默默找规律//f(n-1) 与 f(n-3)f(n-2)前后缀最多匹配f(n-1)-2个package project1;import java.io.*;import java.util.*;import java.math.*;public class Main{ BigInteger[] f; final int mmod=258280327; Big

2015-08-05 20:47:14 418

原创 hdu 5349 MZL's simple problem(15多校第五场1007)

//15多校第三场1007//hdu 5349//set水过#include#include#include#include#include#includeusing namespace std;const long long mod=1e9+7;const int INF=0x7fffffff;typedef long long LL;const int maxn= 1

2015-08-05 20:45:18 382

原创 hdu 5348 MZL's endless loop(15多校第五场1006) 欧拉路

//15多校第五场1006//hdu5348 MZL's endless loop//若图中都是偶点,那么一定符合条件//若有奇点,我们的目标就是消除奇点。//从奇点出发,终止于一个奇点变为偶点的位置//奇点除去一条边变为偶点//从奇点一直出发直到图中都是偶点,这样直接跑欧拉回路即可。//要证明//1.从奇点出发只会使奇点变成偶点,不会改变偶点//2.从奇点出发一定会令图中

2015-08-05 20:44:05 481

原创 hdu 5347 MZL's chemistry(15多校第五场1005)

//多校第五场 1005//hdu 5347//啥也不说了,直接打表#include#include#include#include#includeusing namespace std;const long long mod=1e9+7;typedef long long LL;double e[100];int main(){ int u,v; e[1]

2015-08-05 20:42:08 435

原创 hdu 5344 MZL's xor (15多校第五场1002)

//多校第五场1002//hdu 5344//(Ai+Aj)^(Aj+Ai)=0//sigma^(2*Ai);#include#include#include#include#includeusing namespace std;const long long mod=1e9+7;typedef long long LL;int main(){ int T;

2015-08-05 20:40:21 454

原创 codeforces543B. Destroying Roads(暴力枚举bfs)

//暴力枚举所有点为起点的最小值//然后枚举每段是否为重叠区域。//之前想枚举每一小段,发现很麻烦,其实重叠的区域肯定只有一段,因为如果有两段,那么这两段一定是由最短的路连接的,实际还是一段。//所以枚举一大段即可import java.io.*;import java.util.*;public class cf { FastScanner in; final in

2015-08-03 22:12:07 533

原创 codeforces543A Writing Code(完全背包)

//完全背包//首先定义dp[i][j][k]为前i个人写j行所含bug为k个的种数//然后对于dp[i][j][k]=dp[i-1][j][k]+dp[i][j-1][k-bug[i]];//第i个人要么不写,要么再写一行//然后用类似完全背包我们可以通过顺序遍历,省掉一维iimport java.io.*;import java.util.*;public class cf {

2015-08-03 22:04:18 617

原创 CodeForces 543d Road Improvement(巧妙地树形dp)

//如何求树上任意一点为根的dp值//将以此点将树划分成两部分,一部分还是原来的子树//另一部分是此点的父亲往上为子树,这一点的转化很巧妙,一次从上到下的dp即可。//R[i]记录此点右面子树的乘积,从右到左,其实在最右的时候up[父亲]就已经计算了父亲往上的值了。现在只要记录兄弟即可。import java.io.*;import java.util.*;public class

2015-08-03 21:26:28 497

原创 hiho一下 第五十七周 高斯消元·二(高斯消元解异或方程组)

//package project1;import java.io.*;import java.util.*;public class Main{ FastScanner in; int[][] A; int[] x; int Major[]; int dx[]={0,0,1,-1}; int dy[]={1,-1,0,0}; void Gauss(int equ,int va

2015-08-02 10:48:16 444

C语言函数速查

关于C语言的库函数 比较常见的函数 挺好用的 分享给大家

2014-01-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除