답안 #277370

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
277370 2020-08-21T04:56:12 Z 임성재(#5118) Travelling Salesperson (CCO20_day2problem1) C++17
0 / 25
1 ms 384 KB
#include<bits/stdc++.h>
using namespace std;

#define fast ios::sync_with_stdio(false); cin.tie(0);
#define fi first
#define se second
#define em emplace
#define eb emplace_back
#define mp make_pair
#define all(v) (v).begin(), (v).end()

typedef long long ll;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
const int inf = 1e9;
const ll INF = 1e18;

int n;
int g[2010][2010];
int cnt[2010];
vector<int> ans;

int main() {
	fast;

	cin >> n;

	for(int i=2; i<=n; i++) {
		string s;
		cin >> s;

		for(int j=1; j<i; j++) {
			g[i][j] = g[j][i] = (s[j-1] == 'R') + 1;
		}
	}

	ans.eb(1);
	int m = 1;

	for(int i=2; i<=n; i++) {
		vector<int> v;
		for(int j=0; j<i-1; j++) {
			if(ans[j] == m) {
				if(g[m][i] == 1) {
					v.eb(m);
					v.eb(i);

					if(j+1 < ans.size() && g[i][ans[j+1]] == 1) m = ans[j+1];
					else m = i;
				}
				else {
					v.eb(i);
					v.eb(m);

					if(j-1 >= 0 && g[i][ans[j-1]] == 2) m = ans[j-1];
					else m = i;
				}
			}
			else v.eb(ans[j]);
		}

		ans = v;
	}

	cout << n << "\n";
	for(auto i : ans) {
		cout << i << " ";
	}
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:48:13: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   48 |      if(j+1 < ans.size() && g[i][ans[j+1]] == 1) m = ans[j+1];
      |         ~~~~^~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -