Bài tập 5. Dãy đại diện sắp xếp – DDSORT.CPP Cho dãy số nguyên A gồm 𝑛 số hạng 𝐴1, 𝐴2, … , 𝐴𝑛. Nếu có nhiều số hạng trong dãy bằng nhau thì chỉ để lại một số hạng các số hạng còn lại xoá đi. Sắp xếp dãy sau khi xóa thì ta được dãy đại diện sắp xếp của dãy A. Ví dụ: A: 5, 2, 1, 1, 2, 2, 3. Dãy đại diện sắp xếp là: 1, 2, 3, 5. Dữ liệu gồm: • Dòng 1 nhập số nguyên dương 𝑛 (1 ≤ 𝑛 ≤ 200000). • Dòng 2 nhập 𝑛 số nguyên 𝐴1, 𝐴2, … , 𝐴𝑛(|Ai| ≤ 109 ). Kết quả ghi ra dãy đại diện sắp xếp của dãy A. Các số được ghi trên một dòng và cách nhau bởi dấu cách.
làm đc vote 5*
Hướng dẫn giải:
- Đầu tiên sắp xếp dãy theo thứ tự tăng dần
- Sau khi có 1 dãy số đã được sắp xếp, ta duyệt mảng bắt đầu từ chỉ số đầu tiên. Nếu phần tử thứ i khác phần tử thứ i+1 thì in ra.
Code tham khảo: