АВТ
Language: Russian
English

Remote Training on Programming

Problems Online status Contests
News FAQ E-learning
For authors:
Register  ||  Login
 
Hello, Guest! Please login or register.

805. Двудольность графа

Time Limit: 1 seconds
Memory Limit:65536KB
Points:100
View Problem Statistics Submit Problem added debug

Граф называется двудольным, если его вершины можно раскрасить в два цвета так, что нет ребер, соединяющих вершины одинакового цвета (то есть каждое ребро идет из вершины 1-го цвета в вершину 2-го).

Дан граф. Требуется проверить, является ли он двудольным, и если да, то раскрасить его вершины.

Input

Сначала вводится число N - количество вершин графа (не превышает 100). Далее идет матрица смежности - матрица размером N x N из нулей и единиц (где 0 обозначает отсутствие ребра, 1 - наличие). Граф неориентированный, без петель.

Output

Выведите YES или NO в зависимости от того, является ли граф двудольным. В случае ответа YES во второй строке выведите N чисел - цвета, в которые нужно раскрасить вершины. В случае нескольких правильных вариантов выведите любой.

Sample

InputOutput
3
0 1 1
1 0 1
1 1 0
NO
3
0 1 1
1 0 0
1 0 0
YES
1 2 2

View Problem Statistics Submit Problem discussion Author/source:
Educational Courses / Problems from olympiads.ru /
804. 280 - Троечные последовательности 805.
Problems from Contests and Camps / School olympiads and couses of Vologda region / Impulse, september 2020 / Impulse-2020, graphs /
205. 07 - Игра в города 805.
time generating 0.141 sec.
© Copyright VSU, AVT, Nosov D.A., Andrianov I.A.