Xóa Các Phần Tử Trùng Nhau Trong Dãy Số

View: 743

Bài toán: Xóa tất cả các phần tử trùng nhau trong dãy số. Với những số này chỉ giữ lại đại diện một số.

Ví dụ: dãy 1 1 2 3 2 4 3 7. Sau khi xử lý sẽ còn lại là: 1 2 3 4 7

Đầu vào: số lượng phần tử của một mảng và dãy số của dãy số.

Đầu ra: Dòng thứ nhất ghi số lượng phần tử còn lại, dòng thứ hai liệt kê các phần tử của dãy số sau khi xóa các số trùng nhau.

Code tham khảo: 

#include <iostream> using namespace std; // Xoa phan tu cua mang tai vi tri bat ky void Xoa(int a[],int &n, int vitri) { for (int i = vitri + 1; i < n; i++) { a[i-1] = a[i]; } n--; } // Xoa cac phan tu trung nhau void Xoa_Trung(int a[], int &n) { for (int i = 0; i < n-1; i++) { for (int j = i+1; j < n; j++) { if (a[i]==a[j]) { Xoa(a,n,j); i--; } } } } int main() { freopen("ARRDEL.INP","r",stdin); freopen("ARRDEL.OUT","w",stdout); int n; int a[100]; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i]; } Xoa_Trung(a,n); cout << n << endl; for (int i = 0; i < n; i++) { cout << a[i] << " "; } }

Từ khóa » Xóa Các Phần Tử Trùng Nhau Trong Mảng Pascal