提交时间:2023-10-28 09:16:24

运行 ID: 107744

#include<iostream> using namespace std; int a[30], n; int b[30][30]; bool s = false; void f(int k){ if(s) return; if(k == n){ for(int i = 0; i < n; i++){ for(int j = 0; j < 2; j++){ if(a[i] == a[b[i+1][j]-1]){ return; } } } for(int i = 0; i < n; i++) cout << a[i] << ' '; cout << endl; s = true; return; } for(int i = 1; i <= 4; i++){ a[k] = i; f(k + 1); } } int main(){ cin >> n; for(int i = 0; i < n; i++){ int m; cin >> m; for(int j = 0; j < 2; j++){ cin >> b[m][j]; } } f(0); return 0; }