Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <random>
- #include <time.h>
- using namespace std;
- int * generar(int n){
- int *temp = new int [n];
- for(int i=0;i<n; i++){
- temp[i] = rand()%50 +1;
- }
- return temp;
- }
- void imprimir(int * arr, int n){
- for(int i=0;i<n; i++) cout << i << ": " << arr[i] << "\n";
- cout << endl;
- }
- void ordenar(int *arr, int n){
- for(int i=0;i<n; i++){
- for(int j=i+1; j<n; j++){
- if(arr[i] > arr[j]){
- int aux = arr[i];
- arr[i]=arr[j];
- arr[j] = aux;
- }
- }
- }
- }
- int * eliminar(int *arr, int &n, int r){
- int cur=0;
- int last=-1;
- int count=0;
- // arreglo original
- // nuevo arreglo
- for(int i=0;i<n; i++){
- if(last == arr[i]){
- count++;
- if(count<=r){
- arr[cur++] = arr[i];
- }
- }
- else{
- last = arr[i];
- count=1;
- arr[cur++] = arr[i];
- }
- }
- int *temp = new int [cur];
- for(int i=0;i<cur; i++){
- temp[i] = arr[i];
- }
- n = cur;
- return temp;
- }
- int main(){
- srand(time(0));
- int n; cin>>n;
- int * arr = generar(n);
- imprimir(arr, n);
- ordenar(arr, n);
- imprimir(arr, n);
- int r; cin>>r;
- arr = eliminar(arr, n , r);
- imprimir(arr, n);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement