Điểm:
200 (p)
Thời gian:
2.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Cho dãy số nguyên \(a_1\), \(a_2\), \(a_3\),..., \(a_n\), ta gọi \(x\) là một phần tử độc nhất của dãy nếu giá trị \(x\) chỉ xuất hiện đúng một lần trong dãy. Biết rằng: ngoại trừ phần tử độc nhất, mỗi một giá trị còn lại trong dãy \(a\) đều được lặp lại đúng hai lần. Bạn hãy tìm ra phần tử độc nhất đó nhé!
Input
Dòng đầu chứa số nguyên dương \(n < 10^7\) thể hiện độ dài của dãy \(a\).
Dòng tiếp theo chứa \(n\) số nguyên dương \(a_1\), \(a_2\),..., \(a_n\) \(\left(a_i \leq 10^9\right)\).
Output
Phần tử độc nhất của dãy \(a\).
Ví dụ
Input
7
1 2 1 5 3 3 5
Output
2
Bình luận
200p mà khó nhai thế:v
Anh mới mò ra cái fast scanf nè em https://www.geeksforgeeks.org/fast-io-for-competitive-programming/ , Bài này dùng phép XOR vì nó có tính chất a^a=0, a^0=a, a^b^c=a^(b^c) :V nên ta XOR tất cả các phần tử, sau đó ta sẽ dễ dàng loại bỏ các phần tử lặp 2 lần
Dạ cái fastscan thì hôm trước em có thấy 1 anh khác dùng, và em cũng hiểu sương sương ạ. Anh có thể tham khảo cái này ạ: https://www.lqdoj.edu.vn/src/9525
bài này kể ra 10^7 phần tử thì a có cách ac mà ko bị MTL á :<
em thì đếm phân phối bằng unordered map, nếu số lần xuất hiện của số đó là 2 thì mình xóa khỏi map luôn, xong rồi thì xuất phần tử duy nhất trong map
:V thía thì có lẽ bị MTL đóa, vì mục đích người ra đề là giới hạn bộ nhớ á :V
nhưng không hiểu sao không bị mle ạ:/ bài em 101mb còn limit là 128mb. Nhưng vấn đề là time bài này chặt quá UwU
à thì do mình chưa chạy đến lúc ra kết quả á, nên nó chưa bị 😊
cái này có vẻ liên quan chút ít tới oop ")
em thử if else đi xem mn làm ntn :>
cách gì vậy anh, chứ khó nhai quá:) em thử code phần nhập n sau đó nhập n phần tử chứ không làm gì mà vẫn tle
sort các phần tử lại, sau đó chặt nhị phân :V a đoán là vừa đủ time