Untitled
unknown
plain_text
2 years ago
1.3 kB
5
Indexable
#include <iostream> using namespace std; int QX[100001],QY[100001]; int rear,front; int n,m,startx, starty; int array[1001][1001]; int visit[1001]; int visit_check[1001]; int X[1000001],Y[1000001]; int QG[1001],flag; void reset (){ for(int i = 0; i <= n ; i++){ QG[i] = -1; for(int j = 0; j <= n; j++){ visit[j] = 0; array[i][j] = 0; } } } int BFS (int x){ rear = front = 0; QX[rear] = x; rear ++; QG[x] = 0; while(rear != front){ int temx = QX[front]; front ++; for(int i = 1; i <= n; i++){ if(array[temx][i] == 1 && QG[i] == -1){ if(QG[temx] == 0){ QG[i] = 1; } else { QG[i] = 0; } QX[rear] = i; rear++; } else if (array[temx][i] == 1 && QG[temx] == QG[i]) return 0; } } return 1; } int main(){ //freopen("Text.txt","r",stdin); int T; cin >> T; for(int tc = 1; tc <= T; tc ++){ cin >> n >> m ; reset(); for(int i = 0; i < m; i++){ int a,b; cin >> a >> b; array[a][b] = 1; array[b][a] = 1; if(i == 0){ startx = a; QG[a] = 0; // danh dau quoc gia dau tien mau do } } if(BFS(startx) == 1){ cout << "#" << tc << " "; for(int i = 1; i <= n; i++){ cout << QG[i]; } cout << endl; } else cout << "#" << tc << " " << -1 << endl; } return 0; }
Editor is loading...