Korn là một lập trình viên giỏi thất nghiệp, nhưng anh lại rất tự
cao. Hôm nay anh tham gia phỏng vấn tại công ty công nghệ mới nổi mang
tên Biker.
Tại đây, anh được yêu cầu xây dựng một dãy nhị phân độ dài ~n~ thỏa mãn ~q~ tính chất. Mỗi tính chất gồm 6 số nguyên ~i_{1}, v_{1}, i_{2}, v_{2}, i_{3}, v_{3}~ ~(1 \leq i_1, i_2, i_3 \leq n~, ~0 \leq v_{1}, v_{2}, v_{3} \leq 1)~ với ý nghĩa:
Giá trị của bit thứ ~i_{1}~ là ~v_{1}~
Giá trị của bit thứ ~i_{2}~ là ~v_{2}~
Giá trị của bit thứ ~i_{3}~ là ~v_{3}~
Một tính chất gọi là được thỏa mãn nếu ít nhất hai điều kiện trong ba điều kiện trên đúng.
Để được nhận vào làm, Korn cần phải vượt qua bài kiểm tra một cách xuất
sắc. Tuy nhiên do thất nghiệp quá lâu quá giỏi, anh ta không
biết làm mà lại đi nhờ bạn làm giúp thách đố bạn làm được.
Yêu cầu: Bạn hãy tìm một dãy nhị phân thỏa mãn các điều kiện trên để cho Korn hết tự cao nhé.
Input
Vào từ file văn bản recruit.inp:
Dòng đầu tiên chứa hai số nguyên dương ~n, q~ ~(3 \leq n, q \leq 10^{5})~ là độ dài dãy nhị phân và số yêu cầu.
~q~ dòng tiếp theo, mỗi dòng chứa 6 số nguyên ~i_{1}, v_{1}, i_{2}, v_{2}, i_{3}, v_{3}~ ~(1 \leq i_1, i_2, i_3 \leq n~, ~0 \leq v_{1}, v_{2}, v_{3} \leq 1)~ cho biết một yêu cầu.
Output
Đưa ra file văn bản recruit.out:
Nếu không thể dựng được dãy nhị phân như vậy, hãy in ra ~-1~.
Ngược lại, in ra xâu nhị phân tìm được bất kỳ.
Scoring
Subtask | Điểm | Giới hạn |
---|---|---|
1 | ~30\%~ | ~n, q \leq 20~ |
2 | ~30\%~ | ~n \leq 40, q \leq 20~ |
3 | ~40\%~ | Không có ràng buộc gì thêm |
Sample Input 1
7 5
3 0 5 0 6 1
1 1 2 1 3 0
4 0 5 1 6 1
5 0 6 1 7 1
1 0 2 0 4 0
Sample Output 1
1000111
Bình luận