Giải bóng đá
Xem dạng PDFMột giải thi đấu bóng đá gồm ~n~ đội thi đấu vòng tròn một lượt. Các đội bóng được đánh số thứ tự từ ~1~ đến ~n~. Theo thể lệ giải đấu, nếu trận đấu diễn ra với kết quả hòa, hai đội sẽ thi đấu luân lưu cho đến khi phân định thắng thua (nghĩa là các trận đấu đều được phân định thắng thua).
Hỏi có tồn tại một cách sắp xếp các đội theo thứ tự sao cho trong thứ tự đó, mỗi đội đều thắng trận đấu với đội liền sau mình? Trong trường hợp tồn tại, hãy xác định một cách sắp xếp như vậy.
Input
Dòng đầu tiên chứa số nguyên ~n~ ~(1 \leq n \leq 1000)~ --- số đội bóng tham dự giải đấu.
Dòng thứ ~i~ trong số ~n~ dòng tiếp theo chứa ~j~ kí tự '0' hoặc '1', kí tự thứ ~j~ thế hiện giá trị ~a_{ij}~:
- ~a_{ii}~ = 0 với mọi ~i~.
- ~a_{ij}~ = 1 nếu và chỉ nếu đội ~i~ thắng đội ~j~. Dữ liệu vào luôn thỏa mãn ~a_{ij}~ +~a_{ji}~ = 1 với ~i~ khác ~j~.
Chú ý: Có ~30\%~ số test có ~n \leq 9~.
Output
In ra ~-1~ nếu không tồn tại cách sắp xếp thỏa mãn yêu cầu. Trong trường hợp tồn tại, in ra ~n~ số nguyên là chỉ số của các đội bóng trong cách sắp xếp tìm được.
Sample Input
3
010
000
110
Sample Output
3 1 2