Twist and whirl - want to cheat

Xem dạng PDF

Gửi bài giải

Điểm: 1,20 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Nguồn bài:
NEERC Southern Subregion 2003 - 2004
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Một tay lừa đảo có tiếng l*** đã sáng tạo ra một phương pháp để lừa bịp mọi người. Có ~N~ cái bát úp thành 1 hàng ngang trên bàn, và ở dưới mỗi cái bát đều có một quả bóng nhỏ. Các quả bóng này được đánh số từ 1 đến ~N~ từ trái sang phải. Một thao tác của l*** sẽ làm đảo ngược thứ tự của một dãy bát liên tiếp, ví dụ 2,3,4,5 thành 5,4,3,2. Sau khi l*** thực hiện M thao tác như vậy, bạn cần phải tìm ra số hiệu của ~N~ quả bóng nằm dưới ~N~ cái bát theo thứ tự từ trái sang phải.

Input

  • Dòng đầu chứa 2 số nguyên ~N~ và ~M~ ~(1 \leq N \leq 100000,\; 1 \leq M \leq 100000)~. Mỗi dòng trong M dòng tiếp theo chứa 2 số nguyên ~P_{i}~, ~Q_{i}~ (~1 \leq P_{i} \leq Q_{i} \leq N~) - vị trí của cái bát trái nhất và phải nhất trong dãy bát liên tiếp bị đảo ngược.

Output

  • In ra ~N~ số nguyên trên 1 dòng thể hiện số hiệu của ~N~ quả bóng theo thứ tự từ trái sang phải.

Sample Input 1

5 2
1 3
4 5

Sample Output 1

3 2 1 5 4

Sample Input 2

5 2
1 4
2 5

Sample Output 2

4 5 1 2 3

Note

  • Lưu ý: Thuật toán trâu bò sẽ bị TLE. Have fun! :D

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.