fork download
  1. /*
  2. Fiind dat vectorul X cu n elemente intregi, sa se afiseze
  3. in ordinea crescatoare a elementelor componentelor distincte si a
  4. frecventelor lor de aparitie.
  5.  
  6. Data de intrare: n = 6; X = [45, -90, 45, 2, 25, 2]
  7. Date de iesire: Elementul -90 apare o data.
  8.   Elementul 2 apare de 2 ori.
  9.   Elementul 45 apare de 3 ori.
  10.  
  11. */
  12. #include <iostream>
  13.  
  14. using namespace std;
  15.  
  16. void sort(int *arr, int n) {
  17. int min,pos, aux;
  18. for(int i = 0; i < n - 1; i++) {
  19. min = arr[i];
  20. pos = i;
  21. for(int j = i + 1; j < n; ++j) {
  22. if(arr[j] < min) {
  23. min = arr[j];
  24. pos = j;
  25. }
  26. }
  27. aux = arr[pos];
  28. arr[pos] = arr[i];
  29. arr[i] = aux;
  30. }
  31. }
  32.  
  33. int main(int argc, char const *argv[]) {
  34. int arr[] = {1,2,3,2,5,-41,7,8,-41,15,90,-41,2,3,5,8},
  35. n = sizeof(arr) / sizeof(arr[0]);
  36. int freq[100], vec[100], k = 0;
  37.  
  38. for(int i = 0; i < n - 1; ++i) cout<<arr[i]<<" ";
  39.  
  40. sort(arr, n);
  41.  
  42. vec[k] = arr[k];
  43. freq[k] = 1;
  44.  
  45. //display sorted
  46. //for(int i = 0; i < n - 1; ++i) cout<<arr[i]<<" ";
  47.  
  48. for(int i = 0; i < n - 1; ++i) {
  49. if(arr[i] == arr[i+1]) {
  50. freq[k]++;
  51. } else {
  52. k++;
  53. vec[k] = arr[i+1];
  54. freq[k] = 1;
  55. }
  56. }
  57. cout<<"\n";
  58.  
  59. for(int i = 0; i < k; i++) {
  60.  
  61. if(freq[i] == 1) {
  62.  
  63. cout<<"Elementul "<<vec[i]<<" apare o singura data"<<"\n";
  64.  
  65. } else
  66.  
  67. cout<<"Elementul "<<vec[i]<<" apare de "<<freq[i]<<" ori!"<<"\n";
  68. }
  69. return 0;
  70. }
  71.  
Success #stdin #stdout 0s 5576KB
stdin
Standard input is empty
stdout
1 2 3 2 5 -41 7 8 -41 15 90 -41 2 3 5 
Elementul -41 apare de 3 ori!
Elementul 1 apare o singura data
Elementul 2 apare de 3 ori!
Elementul 3 apare de 2 ori!
Elementul 5 apare de 2 ori!
Elementul 7 apare o singura data
Elementul 8 apare de 2 ori!
Elementul 15 apare o singura data