###### tags: `exercise` `array` `basic` `Tutorial+Code` # Số lần xuất hiện 2 ### Link đề * [https://lqdoj.edu.vn/problem/cnt02](https://lqdoj.edu.vn/problem/cnt02) ### Yêu cầu đề Nhập vào một mảng gồm n số dương, in ra các phần tử của mảng theo thứ tự tăng dần cùng với số lần xuất hiện của chúng, các số trùng nhau thì chỉ ghi một lần. ### Hướng dẫn 1. Nhập số phần tử và các giá trị trong mảng. - Sử dụng các hàm: input(), map(), split(), list(), int(). 2. Sắp xếp mảng a thành mảng tăng dần để những phần tử giống nhau đứng cạnh nhau. 3. Khởi tạo biến đếm = 1. Biến này dùng để đếm số lần xuất hiện của từng giá trị. 4. So sánh nó với phần tử trước đó: * Nếu giống nhau, tức đứng trước đã được lặp lại thêm 1 lần, vì vậy tăng biến đếm lên 1. * Nếu không, tức phần tử đứng trước không còn xuất hiện nữa, ta in nó cùng số lần lặp lại của nó ra. * Sau đó đặt biến đếm trở lại về 1 để đếm số lần xuất hiện của giá trị tiếp theo. 5. Chú ý giá trị cuối cùng chưa được in ra, ta phải in thêm kết quả của giá trị cuối cùng trong mảng. ### Code !!! **Hãy tham khảo hướng dẫn và thử tự làm trước. Nếu gặp sai sót và không tự khắc phục được, hãy quay lại phần này để được giúp đỡ.** ```python= # Copyright (c) 2023, Le Duc Phuc Long """ If you don't think twice, you have to code twice. """ n = int(input()) arr = list(map(int, input().split())) arr.sort() # khởi tạo biến đếm cnt = 1 for i in range(1, n): if arr[i-1] == arr[i]: cnt += 1 else: print(arr[i-1], cnt) cnt = 1 print(arr[-1], cnt) ``` ### Sai sót, thắc mắc, đóng góp ý kiến - Nếu bạn phát hiện sai sót, có thắc mắc, hay bất kì ý kiến đóng góp nào... -> Xin hãy cho tôi biết qua: m.me/phuclong.leduc