首页 > 代码库 > 【BZOJ2756】【SCOI2012】奇怪的游戏 最大流、

【BZOJ2756】【SCOI2012】奇怪的游戏 最大流、

题解:

首先我并不知道这个怎么才能想出来正解。

只能说以后遇到这种题就往黑白染色以及大体关系上靠靠了。


好了,说这道题题解。

首先要相邻格子黑白染色,然后发现每次加权都会让黑白集合总权值各+1。

我们设最终所有格子的权值都为x


这个时候我们就可以讨论,

    如果黑色格子和白色格子的数量不同,那么最后就可以发现当所有格子都为x时,两个集合的总权值差就是x(设cnta为黑色格子个数,cntb为白色,那么差就是|(cnta-cntb)*x|),而权值差是不变的,所以O(1)算出x值,然后check是否合法,check留到后文(当然它很水,读者可以自己YY)

    如果数量相同,那么首先总权值一定要相同,(cnta==cntb 那么最后cnta*x==cntb*x,所以哼哼),不然无解。然后我们发现如果一个x值合法,那么x+1必然合法。

证明:

    数量相同,那么n*m为偶数,那么至少有一个是偶数,那么假设m是偶数(n是偶数就旋转矩阵),则每一列的奇数项和偶数项配对+1,最后一定可以不重叠地让它们全+1,即使得x+1合法。

这个很显然可以用二分来做。


现在说check。

最大流,一对点之间连inf流量边,然后源连黑格,白格连汇(反过来也行),然后流量是需要+权值的次数。


end.


……调了好久好久好久。结果是有点东西没清。

我现在还不知道是哪里没清,只能怒写一个init()函数清空一切的一切,


如果我去掉那个init函数,还是会WA……

谁能在留言里告诉我到底是哪里错了啊!!!!!!!!!

下面附代码和数据生成器和拍子和错了的数据。(直接删掉init就可以知道我哪错了,就不给数据的输出了)

代码:

#include <queue>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 1610
#define M 210000
#define P 45
#define inf 0x3f3f3f3f
#define INF (1ll<<55)
#define LL long long
using namespace std;
struct KSD
{
	int v,next;
	LL len;
}e[M];
int head[N],cnt;
inline void add(int u,int v,LL len)
{
	cnt++;
	e[cnt].v=v;
	e[cnt].len=len;
	e[cnt].next=head[u];
	head[u]=cnt;
}
int d[N],s,t;
queue<int>q;
bool bfs()
{
	while(!q.empty())q.pop();
	memset(d,0,sizeof(d));
	int i,u,v;
	q.push(s),d[s]=1;
	while(!q.empty())
	{
		u=q.front(),q.pop();
		for(i=head[u];i;i=e[i].next)
		{
			v=e[i].v;
			if(e[i].len&&!d[v])
			{
				d[v]=d[u]+1;
				if(v==t)return 1;
				q.push(v);
			}
		}
	}
	return 0;
}
LL dinic(int x,LL flow)
{
	if(x==t)return flow;
	LL remain=flow,k;
	int i,v;
	for(i=head[x];i&&remain;i=e[i].next)
	{
		if(d[v=e[i].v]==d[x]+1&&e[i].len)
		{
			k=dinic(v,min(remain,e[i].len));
			if(!k)d[v]=0;
			e[i].len-=k,e[i^1].len+=k;
			remain-=k;
		}
	}
	return flow-remain;
}
int n,m,low,cnta,cntb,id;
LL maxflow,suma,sumb;
int map[45][45],MAP[N];
bool flag[N];
int nidouwo[45][45];
void init()
{
	n=m=low=cnta=cntb=id=0;
	maxflow=suma=sumb=0;
	memset(map,0,sizeof(map));
	memset(MAP,0,sizeof(MAP));
	memset(flag,0,sizeof(flag));
	memset(nidouwo,0,sizeof(nidouwo));

	memset(head,0,sizeof(head));
	cnt=1;
}
inline LL build(LL mid)
{
	int i,j;
	LL ret=0,k;
	cnt=1;
	memset(head,0,sizeof(head));
	for(i=1;i<=id;i++)
	{
		k=mid-MAP[i];
		if(flag[i])add(s,i,k),add(i,s,0);
		else add(i,t,k),add(t,i,0),ret+=k;
	}
	for(i=1;i<=n;i++)for(j=1;j<=m;j++)
	{
		int uid=nidouwo[i][j],vid1=nidouwo[i+1][j],vid2=nidouwo[i][j+1];
		if(flag[uid])
		{
			if(vid1)add(uid,vid1,INF),add(vid1,uid,0);
			if(vid2)add(uid,vid2,INF),add(vid2,uid,0);
		}
		else
		{
			if(vid1)add(uid,vid1,0),add(vid1,uid,INF);
			if(vid2)add(uid,vid2,0),add(vid2,uid,INF);
		}
	}
	return ret;
}
inline bool check(LL mid)
{
	maxflow=0;
	LL k=build(mid);
	while(bfs())maxflow+=dinic(s,INF);
	return maxflow==k;
}
int main()
{
//	freopen("test.in","r",stdin);
	int i,j,k,g;
	for(scanf("%d",&g);g--;)
	{
		init();
		scanf("%d%d",&n,&m);
		id=low=0;
		cnta=cntb=0;
		suma=sumb=0;
		for(i=1;i<=n;i++)for(j=1;j<=m;j++)
		{
			scanf("%d",&map[i][j]);
			low=max(low,map[i][j]);
			flag[++id]=(i+j)&1;
			MAP[id]=map[i][j];
			nidouwo[i][j]=id;
			if(flag[id])sumb+=map[i][j],cntb++;
			else suma+=map[i][j],cnta++;
		}
		s=id+1,t=id+2;
		LL l,r,mid,ans;
		if(cnta!=cntb)
		{
			mid=(suma-sumb)/(cnta-cntb);
			if(mid>=low&&check(mid))printf("%lld\n",(mid*id-suma-sumb)>>1);
			else puts("-1");
		}
		else 
		{
			if(suma!=sumb)
			{
				puts("-1");
				continue;
			}
			l=low,r=INF,ans=-1;
			while(l<r)
			{
				if(r-l<3ll)
				{
					for(LL I=r;I>=l;I--)if(check(I))ans=I;
					break;
				}
				mid=(l+r)>>1;
				if(check(mid))r=mid;
				else l=mid+1;
			}
			if(ans+1)printf("%lld\n",(ans*id-suma-sumb)>>1);
			else puts("-1");
		}
	}
	return 0;
}


rand:

#include <ctime>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 5
#define inf 0x3f3f3f3f
using namespace std;
int n,m;
int main()
{
	srand((unsigned)time(NULL));
	int i,j,k,g;
	int a,b,c;
	g=10;
	puts("10");
	while(g--)
	{
		n=rand()%N+36;
		m=rand()%N+36;

		printf("%d %d\n",n,m);
		while(n--)
		{
			for(i=1;i<=m;i++)printf("%d ",(rand()*rand()+rand())%100000001);
				puts("");
		}		
	}

	return 0;
}


拍子:

#include <ctime>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 30000
using namespace std;
char jud[5];
bool flag;
int main()
{
	int i,g;
	clock_t j,k;
	system("g++ std.cpp -o std -g -O3");
	system("g++ my.cpp -o my -g -O3");
	system("g++ rand.cpp -o rand -g -O3");
	puts("Time_use?(Y/N)");
	scanf("%s",jud);
	if(jud[0]=='Y')flag=1;
	for(g=1;;g++)
	{
		printf("Case %03d :  ",g);
		system("rand>test.in");
		printf("randok ");
		if(flag)j=clock();
		system("my <test.in >my.out");
		printf("myok ");
		if(flag)k=clock();
		if(flag)printf("my_use : %03dms  ",k-j);
		system("std <test.in >std.out");
		printf("stdok ");
		if(flag)printf("std_use : %03dms  ",clock()-k);
		if(system("fc std.out my.out >NULL")==0){puts("result : AC");}
		else 
		{
			puts("WAWAWAWAWAWAWAWA!!!!!!!!");
			system("start test.in");
			for(i=1;i<=5;i++)printf("\a");
			return 0;
		}
	}
	puts("");
	puts("****,please try again");
	return 0;
}


数据:

10
17 18
40341903 45089677 58878755 12592958 20177441 42885879 60642879 31020468 32661032 15497930 23869486 55568091 20699587 20070625 93490602 48076696 72579952 27749329 
28156967 81464323 4515939 56076424 29173032 88765360 61362902 13517846 47285331 99233170 15829000 37420977 33507708 70754266 42959260 99628082 92627085 92521287 
75537898 75236115 84082604 63333588 25829536 27347789 17143380 23618764 74273449 81621229 33787171 29743493 87276976 88840940 74755154 56964559 29633229 2804044 
83080514 33659317 28534423 63219583 18000574 24013669 35268825 80685477 35779667 308635 28733439 43991088 86127945 19963734 10135382 98442034 15130664 66773567 
30110303 5139409 90030024 4831023 71920791 44934051 97352564 69568408 17939314 82874702 62700839 40884869 27715652 4304739 99498497 18738055 98139089 47047115 
2217563 1183691 25919623 35729503 98539944 46987993 6618808 20128169 61250540 90571863 78854996 71699081 33446910 86935832 2155988 14577415 88553751 6508075 
72682172 30967558 56267975 44843132 90070261 54174039 56059589 22226598 22583878 84992915 53450189 44877305 11860499 28065615 67884768 43664979 13010348 72917175 
3213277 16141121 63016011 83760228 88756134 54250388 54759574 70572638 5994901 64240668 30060878 34090887 63357637 75792763 4588613 72094159 27040867 38348039 
93147845 74463474 97386226 6816249 24267293 82907944 89264014 58463481 84967258 42071569 12109314 69348422 74708858 5630720 61269406 96305731 56509503 16840925 
32765233 80731995 754887 25478381 78959680 46374285 35135893 88907366 19480307 92031310 63255537 23003386 82294674 25818105 987788 53949096 39694508 39298028 
2804108 8319533 72098391 97104799 14322561 82396074 51045489 5931117 56729158 2488889 27123383 46960681 66253612 21846281 21630080 79817131 31752394 58853731 
59438523 29461123 55781176 297087 224401 87421697 9149844 26069326 97385336 93991760 38081102 8921117 19051326 87031602 54885469 59981971 93122643 8028444 
22699798 47356032 33490229 73814683 19004941 34991449 20420963 1811415 6706755 11047356 88062802 19622699 25828708 27869524 37134836 14157139 667537 1226056 
8582426 66076518 2952932 51831094 5739109 60233524 8446269 73745182 11304608 34811784 41627550 66221087 41464445 21557043 63429369 4372233 96542866 25578289 
56008868 79842709 82978181 70302758 71816591 24413804 9780884 49393366 76573951 85851185 20883370 41161460 34499314 76314939 41097599 86076460 921680 75919149 
72713730 58901259 8327661 24388866 6373372 7463083 51067441 957717 13884395 82634987 29513051 17427935 3536896 56266763 6688653 92514493 93332003 6686795 
28923134 17118880 79973874 50379834 18018817 93438806 59873579 13211685 12293046 10149434 45558946 92209202 1795313 73559879 34417024 63929296 952536 88600910 
18 19
33569339 71522878 96342303 75326617 19904707 85621281 24103851 10884678 65322985 30892657 44780055 54244354 20539826 37984518 73144995 53390664 78673390 22596125 88543221 
84858192 27897731 68003527 55112611 97562840 32958941 90180007 84763149 45911293 39530790 31467726 82290110 69905985 77430354 74257538 99777012 46875278 73481589 91539502 
69021093 95314353 83054049 90366209 82693698 33800299 85120457 97184582 50719877 1005649 18470740 10225877 61055976 61923693 64791821 41697874 58300572 90099212 60663334 
12858493 74415843 24672009 85256323 98321203 93118419 72406614 17194462 209602 20840950 12764739 39902512 98501471 29851 7392866 89432596 78044949 52801886 31906158 
37152124 62427853 16637542 98317835 47070267 87005288 74368641 13575285 74671554 50800675 15596437 63035968 70725334 53265080 52819833 14166830 83714434 72581245 60953976 
66862966 19586532 436543 10950454 41326149 31635378 45576564 70817648 41659356 69916240 72651100 13799754 61107140 56346886 88337240 67790774 56472437 93230808 16282405 
31703493 80082719 15497230 15393152 69204448 25707358 85790465 54784364 8207066 43660059 72307599 27157594 67278936 69242514 75659107 42247058 45998836 23111461 28606846 
2997458 1368177 38969189 91112930 91491291 45442597 82386038 38412486 80617256 54136956 61220151 53061495 99902517 54356085 30958385 32948962 28657745 18350087 92597406 
74344972 20091009 94399235 42040843 1086339 13816655 69979403 3357676 63884506 31248124 38593595 7239416 53091910 18627034 92270840 4401654 51252366 14111417 57875460 
30768165 81051198 27039735 37662352 32989735 45252924 264227 88734904 27080596 65887942 30445013 20968979 70533710 20743161 32185836 11254474 8053327 48290941 18956160 
67328657 96384857 51044585 24320894 79253076 42413613 11423005 10031631 37229237 83086330 10420827 51667656 8974659 1953497 56961000 42105531 92992385 40225281 24452280 
67185863 37768047 60912631 51918495 40012741 18417257 11061867 34218618 11305617 14024561 47759102 81271188 45685346 74245245 83022728 2704970 53540376 16476377 96637599 
40478510 16396209 44645646 78649417 94449884 60936346 54200994 60590205 64349889 25225907 27199251 99799064 15339051 93039308 268868 89964597 17395332 91029702 91501964 
80306146 1933096 6822047 83864290 99865512 65095920 92106602 9735279 41064132 92568942 96653758 96125633 4130183 83113184 82264174 51894922 32354212 63544589 85837644 
9550335 9617059 661748 17936758 53826108 81981679 65250937 86498582 33389695 91783356 33060179 12437777 7783561 55010279 79327288 94879146 591306 7512697 22577886 
3143827 49498812 21245797 32927356 94541185 84725658 93942247 46221604 23633180 37494242 61091624 20757998 50188237 1594092 16454881 21438343 55380835 83456470 39092978 
52503325 85430032 89013034 20562164 44520236 10384067 70324005 34992998 69789130 659559 87984151 54225978 45561022 4643892 39624367 7911540 23359925 1001878 11249188 
35159774 316159 48259017 24768930 1658348 42133450 13842700 38149215 71067117 33534143 51421999 44146597 60247222 48397409 35669050 21111259 58045697 68305133 36964224 
20 17
60010257 33234949 95418714 26978982 30041759 71214100 84233200 16943011 83685025 73443290 68576417 72981474 85229505 79078842 76777118 51399873 30954907 
63785323 4018354 92154227 12062963 1263960 69520813 96990931 58384739 96637886 484291 45047929 1929190 95753331 42181179 93471047 56190294 12274485 
3839709 6808755 39966026 6136091 14115611 74265903 35051809 851013 51833916 11000588 69344776 15868760 25807073 40013517 50940979 31262512 25036218 
11721508 20254411 18679576 44886830 9394245 60570532 38691687 37785451 64857709 26512771 58969622 36509430 95173269 15851773 43840405 94198533 30131874 
22075763 82668132 38825318 10957952 20759368 80512604 72531336 28516412 23189846 20214095 62369599 52326803 48418590 41279036 57975781 65543417 69570754 
38647762 7832068 84570495 40416846 22208180 71046942 4936028 78878874 92836194 36044481 65187691 42071821 82437169 48620617 2894540 59395403 29186115 
57984760 47045714 43736062 62600139 27615931 25973754 12618348 92689695 48009470 43318604 99275411 6407947 66870939 11010928 18338719 60690546 17615557 
53036975 53303128 47252229 59431985 47076132 27648665 46744593 18452177 56374709 22193597 38244803 38379210 43524909 1703614 437917 93646496 14600999 
51492364 39191638 75030377 63013339 86506624 87610013 42675072 10663304 21303528 29498534 54090917 68414343 54415160 3099531 77176942 27764232 48228879 
96907092 22170110 48953299 29230857 10057614 61975449 5475500 95874413 84916478 16571958 54523090 14174975 2663107 75233859 52930137 1184944 1316437 
38233984 49214962 20835089 39421327 30884491 20084588 90992711 3516681 22033129 9662472 44092072 91393416 54371854 80886084 49135540 1916459 91198743 
924392 46143709 31119489 64933856 14392719 4933589 40263030 45806690 86253496 55945174 18689350 41844125 50144623 3932111 55142535 36497421 409830 
31537063 5626064 28607773 26936542 37032423 27689099 47198968 22738289 1363879 70792441 3152726 19116130 93902841 38971771 29705864 32509609 64025016 
12843390 29126849 87025239 30542234 90968809 16871112 48938474 11288728 54687830 74964074 72607324 46148224 40812980 65884967 78260785 32240533 5006048 
99804304 43661338 83435717 98466879 59851008 51746421 40429709 68293093 57602761 19661443 86098217 44286081 40289821 31117940 44725812 61211629 88629377 
22340647 43972413 66832258 95494191 80643001 46217585 7133035 10276332 81222770 73991757 44961068 54543718 37544503 14779446 66279297 59546695 42889327 
15826110 61547686 67336360 2758252 49084082 14680530 58333787 67841384 96106722 77457161 37925787 65910793 19583090 59551914 24065962 40922272 66562033 
75703625 16551900 55845541 5558458 89719089 80391019 21318915 12061447 32136076 76196756 87705441 51692783 15065582 28701 33316486 19882995 1672496 
95068413 13011824 74839054 91689766 41849499 76732093 54406190 88835036 70940009 920527 21913391 64790566 13104949 32542547 4708756 76302511 78667012 
54517271 4887228 47542985 99135665 78738618 21901136 11251046 46982749 21960083 16577445 81907202 5025861 83646478 3063233 25352602 762693 81438999 
17 17
31156227 51680854 870644 81721744 93160557 35396529 79609902 14542891 36618885 42777490 99613841 17904078 43427291 51479435 6365850 16381088 68626266 
52766649 84490856 38246758 32775785 5365405 77721470 70497384 49070184 32016446 80774732 83102600 50890897 50030528 70242249 22308887 92473090 29188246 
45027355 46483998 42634158 78683392 49670528 65900761 49165651 16017128 9405667 47230106 64164947 21380426 40783807 19290030 26273119 67360590 69499504 
3710467 45535610 94098546 76883806 51020850 37746302 35714473 7869684 99846407 5748336 29071334 88374130 29882315 49729186 11776421 66981344 15647561 
11807052 34769063 15137437 11258184 32785061 35697938 98144758 27833142 1599731 98596353 54967141 63541396 75777075 61140471 5248039 54405121 42474764 
41226583 10968939 88819636 89732149 75020299 61767981 36673041 51178381 81042584 6144911 17977995 9483321 80706748 46470543 21812834 66049009 1144640 
48059381 53398229 28318361 33862636 37758722 70620449 83568811 34574874 40910279 25394691 5171730 49238421 52227820 53038259 11976156 49407142 13469283 
16377000 59332315 79120506 58381581 63526204 32871450 49944891 7762429 5294563 50461962 60266653 750982 3209414 93792256 34553920 67492962 84692316 
80884103 59661815 8850707 48152424 71350879 54767412 11821217 61872456 19762238 14314195 42921445 73760358 6357303 71900043 25529364 48542800 32615025 
915775 39743104 97651026 85728783 15788175 31605700 48985963 99320632 59156267 61960533 80075382 49573129 58146146 81660201 75557883 92363250 6414946 
49339200 98627111 97526881 95528498 32974824 60388078 19261790 62909338 80987597 9821075 1290131 7237875 86547807 4264174 79388769 67259392 21279472 
34749744 20367739 38615365 70197817 69982632 25728592 96649853 23815362 37912614 3606001 5911978 19295608 27546779 20200867 20204225 74079965 38442644 
69067183 58637679 39955526 73352184 51460901 1602620 14112045 63090005 8848055 87149203 16067397 22543744 4772298 32886035 77764433 69328429 72065349 
51862084 25036793 44931234 6108524 99708929 16849750 55661020 99184778 68916322 82305438 63054820 92254050 25801516 82952323 13571043 63219855 24249930 
19383879 15507350 10430468 99763387 39037521 72164766 65465959 65139145 80146250 39436747 52094015 15249217 5909559 1040277 39395518 19046251 23805224 
46642406 10488566 86216105 80918417 32251884 84475205 27090541 42200574 6736067 95905217 3577929 88969886 81757463 90389978 8238843 36458685 93828500 
64253427 19323088 53073692 76575856 64989732 41863667 97692627 6636209 68736691 28895935 79896056 40827213 52220473 67220844 18585449 67366156 49095643 
19 18
46907657 45677644 22136626 29375193 14392068 88743661 85781812 42875250 41782959 14951624 28966912 32208859 11230663 56721974 28126138 47252908 97519118 9086628 
24943266 15311505 2766664 90928305 5236721 18664612 82345856 11283444 99000188 18846639 8529199 4082548 91703313 14289723 58544126 14810531 31799922 62466221 
13257957 2062107 11654844 85551220 79381255 11295104 88789961 90400289 99187084 53370455 63157857 1269384 18069603 6175748 69798374 61361125 64939583 43792237 
73093856 14132750 55925375 84279426 44220972 17204543 69666426 51417151 61563090 87944647 59392247 43997137 29755833 67859378 61165661 2227750 23784826 82104033 
48569842 74814448 60037554 5902456 77156406 88826562 13394928 26673508 73817512 40042607 70810038 20372540 35452569 75368322 96403059 90771209 3284328 26062769 
45661822 69723125 99100089 59037973 26721090 42623625 7621425 39617041 47904029 82871368 2876912 46857632 37648496 40628937 85895760 5542641 1436584 9877812 
12024016 28701019 60456559 86583307 24020665 67967600 99478200 77370518 60279432 63710882 98166465 14432165 61153607 23563253 3521998 76527865 1788042 36759504 
82352556 31564005 73251838 82050433 53487747 54705025 37044862 69645326 65556093 29853740 94134369 2909512 85048359 20498806 2514141 29996167 76020599 8610652 
93724509 17697556 59242147 57152562 37903004 2891019 9632104 36087293 34331273 89942866 57483029 35641290 12189937 9454140 26115743 75540546 50077819 43849724 
21238591 85217237 72521187 5189644 19151276 78067968 27008980 41108817 67499124 7362121 90712066 82548460 39845900 35319658 84143070 76549462 29487113 21911930 
28190759 93412669 67944403 79843353 60272150 69622964 14787496 66968624 20333357 1724835 39839631 54222746 73765521 89416981 63734473 69173941 13197080 18649533 
26573333 3387767 83617165 91006210 9576378 97188691 24898815 53855519 58624777 18630447 38125548 76483690 20552491 20134830 59024400 35502319 22914285 72545503 
23086049 60465852 13904580 44115106 50878047 26931484 82570424 48931160 19509917 67856819 86003819 42314172 4578844 66875989 42198893 6220585 76466090 14992830 
38344263 91076696 68352535 75253644 16699719 71633449 59007043 87698633 9064585 80412536 43876120 82754595 77155747 36723351 59255178 57845694 39191849 77922736 
53706665 35525305 54640398 32610847 28494769 58522457 49121963 88687056 14217045 74297640 36801259 68508592 18029407 27785300 57963256 49452119 69817266 51377024 
66597099 32082548 53407670 19282735 30411313 82953265 48215311 86609064 89452696 3580860 85355421 96469294 94146126 4096405 24952938 94231271 24581054 34358364 
57736207 81624867 98770433 91262419 53651502 7368871 78171811 94253298 52814389 67779346 95197980 54908514 32755340 46118161 29820600 21764257 76264872 22688262 
13404112 39347863 20449400 76198395 98092446 75961663 14059806 21803201 52924410 51365118 35293990 54682449 14316497 73251024 32871041 35226144 16153509 95194305 
53429239 1388699 55904356 94258687 72644211 84277782 73515394 27109991 41569320 12107990 10766346 73446328 17168429 24978587 10903061 35804148 5997296 96597416 
16 18
43094823 15701751 8675729 1687581 28895421 81845652 9970243 87381399 1927087 8350269 29178349 78888468 90427487 58194896 32198464 27131972 24138697 18556556 
6623292 15320798 91020897 68276509 25463604 23835621 181073 6467227 19976868 45922517 49947374 51065568 50498687 29295297 2001386 41619073 8593932 68778555 
96872007 1471551 15655597 5847949 13134282 83316354 49957003 36857957 49904422 8878715 51063652 69687103 36504536 45632334 2858037 47021235 46269971 4213132 
58737361 63775988 93932368 13490054 7880577 15938139 32139712 7421269 24747123 49253312 45215454 1721058 50912982 83734435 3227883 55793748 83849838 57853483 
2591223 91504300 81970506 56750251 72479366 74359963 71104493 48819143 57428425 81409237 1293954 75899641 39360242 86910325 20780267 72843297 15097973 90977030 
51268268 678514 64683443 60952364 11372624 30568137 29495491 15320253 87385604 15816869 31833449 42554565 425403 56177985 34890721 18922752 8458660 74755344 
5917928 62197574 29191850 86326171 81233588 82552059 99966562 929309 89062770 89342251 53836071 9818274 77227998 99218563 21703122 61485339 46687325 59077282 
90531881 94424333 25736270 80790419 90844424 38076275 85302018 21557234 65308014 30782278 89856168 35319334 757561 11090069 57669873 19071730 25761698 50259351 
14535537 64909675 83184567 57675353 96745152 31623814 87231464 25500686 84223805 55313281 6081192 5401644 15498603 78143653 5697588 202024 12431018 7110052 
76840705 69756393 16214652 31453878 46227731 52007427 8067407 40891340 20659839 81354304 85394009 67739528 38947593 32502075 30848442 27102107 52902564 45615757 
11417714 70545934 66619674 85306896 65806201 44682717 83934509 28951374 71892289 51726529 93336393 56585442 32509679 57127669 36612424 31756004 27650507 90342916 
36284976 12101152 76934133 63019831 31424387 5795697 21338472 14599955 13335508 38084660 1505421 50737300 21891472 3303941 37669534 50587931 34509089 90585964 
8437234 19867975 19207161 66551700 96705453 1073338 56138610 60611303 73759414 58345562 35941962 3301821 5932544 15996755 52939119 64530116 96132135 19749703 
591445 72975108 514811 51348790 3490925 15984177 39290992 56376130 21323436 15680256 94020658 69308091 81379005 81714324 82061352 94064834 87956879 66443590 
97656885 77955669 65008086 58718542 69019206 77639160 74835789 2922193 80327016 50027666 16248452 34800296 73561789 4254140 31946915 16619778 41230383 83034065 
761472 28612593 66113945 91266055 2753244 1485433 46950650 9299253 21476100 84827065 69085262 67959089 59543090 8482224 56332468 47607203 30273215 56522273 
19 19
44392125 3680308 29627890 42953043 88532043 12507 52390488 92998335 8388071 55034074 64651462 78854290 25252443 69528299 33898597 48196616 39235793 23566194 33861688 
59562161 8589723 22641315 88884233 32629467 6729408 6148524 80736434 23771400 49281986 89110577 75049589 157770 97399059 72140897 9403637 61858345 47796553 98726601 
46411646 63602794 40552930 66526931 56491886 11312655 23675633 28326073 6939642 97741602 33610050 39287962 23611684 7793813 63602423 28924714 77062187 50715971 11105744 
32935727 80454811 29176897 50475981 20466184 98385524 71843767 23771520 30391011 93199550 28492147 43821086 46018220 69941855 53263461 37304732 10335123 41267990 35838738 
97095103 69354092 33185612 26081567 67393293 71480689 50805910 32344309 29245616 22963698 12877982 89797308 39337780 770072 27945782 95648350 33949146 3272396 8232099 
88993721 32380226 60535617 40423961 65129132 82763869 20025009 14370875 36850493 13283355 25344152 23141348 36559786 72324918 41703946 682350 97898023 61041057 6139632 
3721707 74806392 15904477 26141491 52762112 50124296 65400524 79938608 58446407 3653656 25473818 44369871 80100834 64372266 63809655 26825444 19570386 67668698 56115672 
44590591 43494133 94851204 56363307 7680774 1393050 71643562 12939491 13186254 36946257 15223370 67014251 56509284 89811323 95821852 61171593 90495994 4668124 69663582 
99379281 66366405 16365102 98934764 48666749 61875560 49835047 7883465 2864901 86478968 94639574 34149208 54416407 52966201 6880008 24117628 74427644 37634885 18657557 
55202057 368854 85898953 18191289 77423525 35649637 83857329 42546052 59898293 88625824 69116622 49017640 30260388 22281494 38556836 24703325 63683877 36355582 59595994 
15959882 13966710 2307976 63769903 56283931 8373228 27014288 19239157 1524560 87413704 16452394 32168607 10848005 9972125 15329687 55598196 15370795 9967331 52848 
25252812 56618187 99005373 7418295 28447945 38972841 67537541 77550624 98389349 34353771 23105535 3573320 10418604 89287830 1844735 8216266 49954242 45218152 10527755 
90271134 6610343 73863987 68399596 67363360 98024396 17177243 35637705 12642454 13156161 25847681 59339376 78355308 74319649 22658625 28367107 13029242 95922477 37297535 
87402718 13016569 35371958 43429325 55299389 94684775 9126236 2142414 25004541 75517710 74705958 3575869 75724292 30003531 64295063 57226013 60804874 47794472 59073087 
66161934 34631501 77755400 65251649 6039941 40186479 43622044 82950368 52022827 21081421 65281485 11656349 51758141 92991933 52035981 77990343 54642797 21572641 62551519 
77191962 19433115 82418685 72357293 755524 7724952 37336775 56172480 27155654 44870935 69407039 82876979 36251892 29507303 62185707 19867502 73434297 13167007 2597089 
60820808 14871668 25783341 85277187 3954111 6228588 16762239 17627312 28320034 42077484 76029460 44176309 21133080 89629258 12755499 86364311 98364087 55371322 45626455 
46911041 43943997 43668845 83468334 35082570 59482772 23840704 26218545 39101811 21952591 23421638 42994692 9629261 55338274 88233350 54008700 97941780 16632505 27052025 
3506095 84456517 94233510 24649512 55522985 25942306 90889166 18998449 30923110 75803296 46305306 61985241 51232797 70209417 14034446 98179325 2267195 13349582 61912264 
20 19
48420434 794139 3942081 1330256 63808047 63395620 83177503 24719664 87746822 66915064 87306684 37889805 5019907 94738640 47794307 27441656 3372476 2263764 19742256 
46215320 4834941 24729095 98827326 83653124 51309625 26924992 13870037 72831941 36260695 7928403 87236533 16164481 76206648 19691957 98384704 87250043 40766736 92941567 
39613852 10107273 5575397 5132347 23389043 5550122 57357228 43266161 78577479 39816409 43499688 92516698 23777939 59714814 12281923 39858463 72574755 95552607 23745374 
15539864 6635943 67220289 52333257 50345934 34559068 13565125 66681571 59661338 14533165 49074446 21882771 66549595 17459423 61655300 98530932 5437837 7180811 15852124 
37062271 52407978 1449676 14735443 91581689 10969925 74705319 69441894 25252899 27022236 43574239 83625424 64058305 37886436 36289174 95910913 539788 17442349 9486994 
39553409 50723247 86946017 92220915 86316782 82544444 12679108 91456614 33367275 466759 73475875 2789115 5551782 65247055 28848530 55955928 92700284 38497959 82962205 
81240917 67835154 66312349 19930914 86837441 45284332 77987810 61767563 28717166 58182677 90979117 12031522 68809631 17463226 59248381 7151197 79479441 13692277 69767938 
58121551 66826677 76355714 72642798 18261642 24352069 98484830 99558513 54219737 10474785 9193288 28505823 19019978 72391564 5783652 11858808 89621485 48907630 15756702 
35994614 49689685 18995773 40068952 10596932 68658040 16846795 30534235 7006841 27465434 6627236 76612286 42629835 69675399 60558982 41345749 34952698 8371249 55160508 
84030171 2569564 22671622 11404378 2314110 4459489 11837879 63881738 58198881 22999 1681144 24877313 86253334 21292941 62341706 39304172 23108616 74980397 83404060 
26820392 24328899 96695098 94655293 1150356 9244328 32032884 82786741 6230944 33050467 24150940 1194095 43363373 8865592 49157019 49797748 23059113 36996856 42348777 
23140290 82219452 25749956 10473920 24417003 70116723 34484756 34352642 14228115 15725512 92185925 46253005 71380201 29790697 53081542 96035270 11915352 86597657 17364983 
37748966 89166591 19830399 25750266 16721797 21098889 55553215 38027146 97880110 23221186 80319832 34003274 32076813 52105027 56922980 77825248 26549539 5469980 94590426 
6117459 22535168 51275999 4563821 17935657 95589230 484535 62125265 68787356 12014280 53923631 25017862 25903613 76809828 64645632 51355564 41077609 43422709 12274525 
5216214 54149766 10258739 24334420 28976231 19508036 37920793 78587996 97374966 5843605 34466592 75184063 38525312 90038206 60020730 40393283 95909759 47912785 33089299 
54673659 64126320 86527775 5404868 50499579 13406468 73706470 54419809 74143223 86491461 44228334 39364833 47936609 47888925 60822161 38876836 1425387 77282237 82999078 
14062845 9720671 35902641 24830579 39180305 1120976 28630450 37427098 11210181 99567686 13681685 19125817 78010493 11156100 12251248 37891438 68414458 82711313 37329756 
57334945 69571122 2257523 2847912 68507099 27582083 21026291 56544706 30044531 13707665 90713261 45924202 12983814 63528545 87481837 87488566 78207041 13547599 14237305 
53931 5416347 14531074 42120293 403418 62827929 29463643 40429909 19036550 34342788 40298441 52600681 69399530 2278023 39311762 74147991 54693176 22383546 56421625 
6545657 36535932 58007842 9519517 88945985 11276146 32814842 71783081 21780224 47027127 68942985 43787496 78834242 30508930 92835394 74283531 17639232 36440150 67682690 
18 17
93936069 72661338 69022891 30425314 85007976 69443410 5338578 62535111 78462326 39915334 42541179 62401511 11267813 43220367 21175607 42294040 33852295 
83683896 40492025 38861354 25058927 5734364 2655486 15698112 22947738 80254897 32674192 51292808 57461045 5404729 13855068 5464121 73296016 51982226 
70051937 63529875 70764143 27102111 20898843 91540499 186224 72607851 26358682 1593112 67186326 83123564 81854205 53966025 35436758 48794160 58041106 
3137796 6662455 75818612 53086404 86687995 51738306 60667924 32239782 58799044 10412111 20423914 39571930 212868 75729816 19063615 53146869 62581859 
43453536 84817117 79876204 42567566 81197006 41962761 51852026 35185530 43298689 42815682 81168007 5415971 96779690 5700052 33104216 33279444 179753 
71899227 92174330 38914792 46889920 25703468 41640378 14894454 60352084 2591105 74942719 76124905 9071585 25526379 30735495 43232312 63553169 32354729 
4942253 64397934 77507511 27208808 17778649 90676425 19549269 6735154 34206033 12184090 95205613 25116642 31386043 86764640 51369044 12143206 86094219 
36526842 27554661 28783424 59791272 17674570 64565725 45928373 77229545 33941448 34206039 62641064 96396331 66642536 859763 74190268 36836228 30502649 
86717896 27313799 38867409 34685549 51706450 91959426 32253656 13203515 45417089 85027088 28404246 25196032 33046260 22931334 74284849 98903418 94548163 
88299117 82920739 90068199 115650 94018070 87677070 81356835 18339302 14896638 45673653 60111920 10926299 37536495 58380489 78311873 4072436 15848364 
43552761 89697031 60341721 91678165 48306895 34162925 75777378 94757268 2342397 11496910 27793095 48584310 86447673 2479708 2025998 57352880 16003290 
69764874 12866296 13316966 8312498 34572083 25919911 39127401 96910406 41319654 69430738 22485137 46087979 6049183 84147132 67941269 89182466 19657797 
81907359 2468534 34107535 69252504 43890231 96916972 60240704 72441946 7936907 94807809 61821714 74020606 9271834 71190154 69442537 33551488 95949989 
95818053 38970237 76607418 56033362 4216656 76736691 71150053 80776755 51272623 15443317 1862002 59561773 33409932 55817362 70331078 79049748 14091198 
29546295 58243514 9071850 10458744 54060641 91281279 37060861 62468914 12832635 79557341 8168086 2904955 20560417 55819484 5116691 26776973 63781859 
79558296 4542422 25162832 2194601 2886413 66014444 38207834 39171189 38228121 46407284 81453331 56720190 1804454 1439776 67560188 40547548 95939774 
98489195 318346 73485175 27703332 39126390 22855204 58651172 10711058 85830291 74401041 60104776 536316 30795197 86752974 19541175 1460913 34620498 
48922279 47526564 1735781 4436413 65636593 39810152 15399622 65148958 93738827 84100271 11910875 55351486 44047210 52187907 30713199 50231268 23479853 
16 17
50376932 604958 39544391 54604340 22882789 390334 94990279 43659055 74096285 98906553 87086978 20432891 30205 7752655 88111071 80901361 97821912 
82148380 88324240 91162537 86060749 19284067 53667112 70618469 90557965 56566538 57986310 87683832 87301187 14870044 4051129 36837267 7806195 78882799 
32639326 74483043 57372691 93533013 64538347 83818792 60190471 1386686 10467750 34295425 19572104 58598813 11191660 97584529 11851756 600353 26797611 
71709726 94089019 28207500 90585169 16340789 49618846 60717148 35541150 26929641 19301194 9873670 82639284 90239300 94690604 74724050 5587487 41757146 
15661205 10409576 99354156 16818409 11919001 31632163 84745294 28061168 29941939 44703414 4094229 21589262 38780626 29517113 44402866 1853841 34261021 
46624305 39746096 2557075 43745296 20722549 55235052 11111078 318121 9132115 23426728 56774523 92362439 25348442 85676028 44097897 45948375 1468814 
1763233 75519187 79396002 99139617 16607976 79156351 21220267 80111175 34868323 80229310 9392210 53409931 54820872 71871199 21673808 33695415 16087486 
463745 11235471 30429153 14117977 98022766 61168665 17575614 75986943 44305587 43977635 55575612 88017804 58129693 98607815 64795238 50998870 63970546 
22634345 26688552 29158626 66157469 67382836 37505761 73029427 23347652 87722454 1371277 18633861 47837113 19668880 46442361 43799587 53620876 13314117 
6241948 90040130 90454754 12063583 78099526 61227743 63229373 13583502 17046071 20137389 15195958 75483089 30952492 6892701 11414149 52581239 42248097 
67812009 72491962 14201820 68017086 86529481 8139733 22472047 46933030 75132448 49383795 63484045 13352328 20883032 25037786 36593381 34216429 67384753 
15864087 54865123 71560185 50826907 97023426 81540181 12180000 71203915 86584504 47917237 98662466 66824683 13062992 94111391 99482342 10290672 70386824 
57681397 55618530 21951320 76717785 2893171 3716920 9055368 34006416 84775441 52867500 13668269 52481297 10128411 82894865 17116958 10277378 5969538 
2995269 58392234 50071461 62122653 31764064 95509099 30229384 10110454 59203783 71264426 46532339 95847820 7081730 43348533 21276165 8799053 6822846 
8982817 84279155 73831181 31199089 9541436 74695208 5267021 74776022 50903909 24980230 70257282 28629619 9980055 78072754 81652894 12381370 22383094 
61683854 35998248 10467096 40917429 52468387 83751233 37446408 17415743 22132637 48663848 94872801 79828790 65286957 55044996 31789169 10007645 25735473 


【BZOJ2756】【SCOI2012】奇怪的游戏 最大流、