#3 wa 求调,必关
  • 板块学术版
  • 楼主ny_xhc
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/4/1 10:21
  • 上次更新2024/4/1 10:27:21
查看原帖
#3 wa 求调,必关
1222308
ny_xhc楼主2024/4/1 10:21

评测记录

#include <bits/stdc++.h>
using namespace std;

int n;
const int N=1105;
int g[N][N];
char a,b;
int d[N];
int cnt;
stack<int> q;
int ans=100000,ans1=0;
void dfs(int x) {
	cnt++;
	for (int i=ans; i<=ans1; i++) {
		if (g[x][i]>0) {
			g[x][i]--;
			g[i][x]--;
			dfs(i);
		}
	}
	q.push(x);
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin >>n;
	for (int i=1; i<=n; i++) {
		cin>>a>>b;
		g[a][b]++;
		g[b][a]++;
		d[a]++;
		d[b]++;
		ans=min(ans,min(int(a),int(b)));
		ans1=max(ans1,max(int(a),int(b)));
	}
	int s=ans;
	for (int i=1; i<=500; i++) {
		if (d[i]%2==1) {
			s=i;
			break;
		} else {
			cout<<"No Solution";
			break;
		}
	}
	dfs(s);
	while (!q.empty()) {
		cout<<char(q.top());
		q.pop();
	}
	return 0;
}
2024/4/1 10:21
加载中...