抽象玄学神奇的WA
查看原帖
抽象玄学神奇的WA
473992
dbycs11楼主2024/2/28 10:22

提交记录 可以看到,第一个点错了,但如果各位大佬把本辣鸡的代码把第一个点跑一边,就会发现输出和答案一样,但洛谷却判了个wa,就非常神奇,请各位大佬帮本辣鸡找找问题。

代码:

#include<iostream> 
#include<cstdio>
using namespace std;
const bool T=true,F=!T;
const int MAXN=500+10;
static int g[MAXN][MAXN],a[MAXN];
int n,m,ans,tot;
inline int read()
{
	int x=0,f=1;char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9'){x=(x<<3)+(x<<1)+(ch^48);ch=getchar();}
	return x*f;
}
void Dfs(int x)
{
	for(int i=1;i<=n;i++)
	{
		if(g[x][i]>=1)
		{
			g[x][i]--;g[i][x]--;
			Dfs(i);
		}
	}
	a[++tot]=x;
}
signed main()
{
	m=read();
	for(int i=1;i<=m;i++)
	{
		int u=read(),v=read();
		g[u][v]++;g[v][u]++;
		a[u]++;a[v]++;
		n=max(n,max(u,v));
	}
	int x;
	for(int i=1;i<=n;i++)
		if(a[i]%2)
		{
			x=i;break;
		}
	for(int i=1;i<=n;i++)a[i]=0;
	Dfs(x);
	for(int i=tot;i>=1;i--)
		cout<<a[i]<<"\n";
	return 0;
}

第一个点: IN:3 1 2 2 3 3 1 ANS:1 2 3 1

2024/2/28 10:22
加载中...