2 条题解

  • 1
    @ 2021-10-7 13:56:42

    点赞发题解

    • 0
      @ 2021-10-7 13:57:29

      除站内好友以外

      • @ 2023-4-3 19:33:49

        你不发我来发!

        #include<iostream> 
        #define MAX 1024
        using namespace std;
        int g[MAX][MAX]={0};
        int d[MAX]={0};
        int r[MAX]={0};
        int n=0,e,a,b,m=0;
        void in();
        void find(int i);
        void out();
        int main()
        {
        	in();
        	for(int i=1;i<n+1;i++)
        	{
        		if(d[i]%2==1)
        		{
        			find(i);
        			out();
        			return 0;
        		}
        	}
        	find(1);
        	out();
        	return 0;
        }
        void in() {
        	cin>>e;
        	for(int i=1;i<e+1;i++)
        	{
        		cin>>a>>b;
        		m=max(a,b);
        		n=max(n,m);
        		g[a][b]++;
        		g[b][a]++;
        		d[a]++;
        		d[b]++;
        	}
        }
        void find(int i) {
        	for(int j=1;j<n+1;j++)
        	{
        		if(g[i][j]>0)
        		{
        			g[i][j]--;
        			g[j][i]--;
        			find(j);
        		}
        	}
        	r[++r[0]]=i;
        }
        void out() {
        	for(int i=r[0];i>0;i--)
        	{
        		cout<<r[i]<<endl;
        	}
        }
        
    • 1

    信息

    ID
    1050
    时间
    1000ms
    内存
    128MiB
    难度
    5
    标签
    递交数
    18
    已通过
    15
    上传者