Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main() {
- int N, uniqueCount = 0, *initialArray, *tempArray;
- cout << "Enter N: ";
- cin >> N;
- if (N <= 0) {
- cout << "Array length must be positive.";
- return 0;
- }
- initialArray = new int[N];
- tempArray = new int[N];
- cout << endl << "Fill the array:" << endl;
- for (int i = 0; i < N; i++) {
- cout << " " << i << ") ";
- cin >> initialArray[i];
- }
- cout << endl << "Your array:" << endl;
- for (int i = 0; i < N; i++) {
- cout << initialArray[i];
- if (i + 1 < N) {
- cout << ", ";
- }
- }
- for (int i = 0; i < N; i++) {
- bool isFound = false;
- for (int j = 0; j < uniqueCount && !isFound; j++) {
- if (initialArray[i] == tempArray[j]) {
- isFound = true;
- }
- }
- if (!isFound) {
- tempArray[uniqueCount++] = initialArray[i];
- }
- }
- delete[] initialArray;
- initialArray = new int[uniqueCount];
- for (int i = 0; i < uniqueCount; i++) {
- initialArray[i] = tempArray[i];
- }
- delete[] tempArray;
- cout << endl << endl << "Array after deleting duplicates:" << endl;
- for (int i = 0; i < uniqueCount; i++) {
- cout << initialArray[i];
- if (i + 1 < uniqueCount) {
- cout << ", ";
- }
- }
- for (int i = uniqueCount; i >= 0; i--) {
- bool isAnySwaps = false;
- for (int j = 0; j < i - 1; j++) {
- if (initialArray[j] % 10 > initialArray[j + 1] % 10) {
- swap(initialArray[j], initialArray[j + 1]);
- isAnySwaps = true;
- }
- }
- if (!isAnySwaps) {
- break;
- }
- }
- cout << endl << endl << "Array after sorting by smallest digit:" << endl;
- for (int i = 0; i < uniqueCount; i++) {
- cout << initialArray[i];
- if (i + 1 < uniqueCount) {
- cout << ", ";
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement