Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

Re:到底有什么鬼数据阿

Posted by lookus at 2004-09-12 22:05:45 on Problem 1776
In Reply To:Re:why WA Posted by:lookus at 2004-09-12 22:04:30
> #include <stdio.h>
> int g[1001][1001],n;
> int p[1001][1010],q;
> int v[1001];
> int next(int k)
> {
> 	int i;
> 	for(i=1;i<=n;i++)
> 		if(g[k][i] && v[i]==0)
> 		{
> 			p[q][p[q][0]] = i;
> 			p[q][0]++;
> //			printf("%d ",i);
> 			v[i] = 1;
> 			return i;
> 		}
> 	return 0;
> }
> int back(int k)
> {
> 	int i;
> 	for(i=1;i<=n;i++)
> 		if(g[i][k] && v[i]==0)
> 		{
> 			p[q][p[q][1009]] = i;
> 			p[q][1009]--;
> 	//		printf("%d ",i);
> 			v[i] = 1;
> 			return i;
> 		}
> 	return 0;
> }
> int apath()
> {
> 	int i,b;
> 	for(i=1;i<=n;i++)
> 		if(v[i]==0)
> 			break;
> 	if(i>n)
> 		return 0;
> 	p[q][0] = 2;
> 	p[q][1] = i;
> 	p[q][1009] = 1008;
> //	printf("%d ",i);
> 	v[i] = 1;
> 	b = i;
> 	while(i)
> 		i = next(i);
> 	i = b;
> 	while(i)
> 		i = back(i);
> 	return 1;
> }
> void main()
> {
> 	int i,j;
> 	while(scanf("%d",&n)!=EOF)
> 	{
> 		for(i=1;i<=n;i++)
> 		{
> 			v[i] = 0;
> 			for(j=1;j<=n;j++)
> 				scanf("%d",&g[i][j]);
> 		}
> 	q = 0;
> 	while(apath())
> 		q++;
> 	printf("%d\n",q);
> 	for(i=0;i<q;i++)
> 	{
> 		printf("%d\n",1007+p[i][0] -p[i][1009]);
> 		for(j=p[i][1009]+1;j<=1008;j++)
> 			printf("%d ",p[i][j]);
> 		for(j=1;j<p[i][0];j++)
> 			printf("%d ",p[i][j]);
> 		printf("\n");
> 	}
> }	}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator