Đề thi lớp 10 chuyên Đại học Vinh 2024 - Dãy số tương tự
Point: 100.0
Time limit: 1.0s
Memory limit: 250 M
Input:
stdin
Output:
stdout
Author:
Problem type
B - Thuật toán cơ bản: 04 - Mảng thống kê, đánh dấu
Cho hai dãy số nguyên \(a_1, a_2, \ldots, a_n\) và \(b_1, b_2, \ldots, b_n\) với điều kiện \(1 < n \leq 5 \times 10^4\) và \(1 \leq a_i, b_i \leq 10^9\) \((i = 1, 2, ..., n)\). Hai dãy số \((a_i)\) và \((b_i)\) gọi là tương tự nhau nếu với mọi \(i \neq j\) mà \(a_i = a_j\) thì \(b_i = b_j\) và \(a_i \ne a_j\) thì \(b_i \ne b_j\).
Yêu cầu:
Hãy kiểm tra hai dãy số \((a_i)\) và \((b_i)\) có tương tự nhau hay không?
Dữ liệu vào:
Từ tệp văn bản SEQ.INP, trong đó:
- Dòng 1 ghi một số nguyên dương \(n\);
- Dòng 2 ghi \(n\) số nguyên của dãy số \((a_i)\), mỗi số ghi cách nhau ít nhất một dấu cách;
- Dòng 3 ghi \(n\) số nguyên của dãy số \((b_i)\), mỗi số ghi cách nhau ít nhất một dấu cách.
Kết quả:
Ghi ra tệp văn bản SEQ.OUT gồm một dòng chứa số \(1\) nếu dãy số \((a_i)\) và dãy số \((b_i)\) tương tự nhau và số \(0\) trong trường hợp ngược lại. Nếu \(n\) không thoả mãn điều kiện bài toán thì ghi là \(-1\).
Ví dụ:
SEQ.INP | SEQ.OUT | Giải thích |
---|---|---|
5 1 2 3 1 3 3 2 1 3 1 |
1 | Với mọi \(i \neq j\) \((i, j = 1, 2, ..., 5)\) ta có \(a_i = a_j\) thì \(b_i = b_j\) và \(a_i \ne a_j\) thì \(b_i \ne b_j\), do vậy hai dãy \((a_i)\) và \((b_i)\) tương tự nhau. |
5 1 2 3 1 3 1 2 3 3 3 |
0 | Ta có \(a_1 = a_4\) nhưng \(b_1 \neq b_4\), do vậy hai dãy \((a_i)\) và \((b_i)\) không tương tự nhau. |
Giới hạn:
- 10% số test ứng với các giá trị của \(n\) không thoả mãn điều kiện bài toán;
- 70% số test ứng với \(1 < n \leq 10^4\);
- 20% số test ứng với \(1 < n \leq 5 \times 10^4\).