Cerința
Scrieți funcția Kth
care primește ca parametri:
a
– un vector de numere întregin
– un număr natural reprezentând numărul elementelor vectoruluix
– un număr întregk
– un număr natural
Funcția va returna poziția din vector unde x
apare pentru a k
-a oară, sau -1
dacă x
nu apare de cel puțin k
ori
Restricții și precizări
1 ≤ n ≤ 1000
- elementele vectorului sunt indexate de la
0
lan-1
. -1000 ≤ a[i] ≤ 1000
, pentru oricei=0..n-1
-1000 ≤ x ≤ 1000
0 ≤ k ≤ 1000
Exemple:
Dacă a = (4,2,5,2,6,2)
, atunci Kth(a, 6, 2, 2)
va returna valoarea 3
.
Cerința
Scrieți funcția Kth
care primește ca parametri:
a
– un vector de numere întregin
– un număr natural reprezentând numărul elementelor vectoruluix
– un număr întregk
– un număr natural
Funcția va returna poziția din vector unde x
apare pentru a k
-a oară, sau -1
dacă x
nu apare de cel puțin k
ori
Restricții și precizări
1 ≤ n ≤ 1000
- elementele vectorului sunt indexate de la
0
lan-1
. -1000 ≤ a[i] ≤ 1000
, pentru oricei=0..n-1
-1000 ≤ x ≤ 1000
0 ≤ k ≤ 1000
Exemple:
Dacă a = (4,2,5,2,6,2)
, atunci Kth(a, 6, 2, 2)
va returna valoarea 3
.
Dacă a = (4,2,5,2,6,2)
, atunci Kth(a, 6, 5, 3)
va returna valoarea -1
.
Dacă a = (4,2,5,2,6,2)
, atunci Kth(a, 6, 5, 0)
va returna valoarea -1
.
Important
Soluția propusă va conține definiția funcției cerute. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.
int Kth(int a[], int n, int x, int k){ if(k == 0) return -1; int cnt = 0; for(int i = 0; i < n; ++i) if(a[i] == x) cnt++; if(cnt >= k){ int poz = 0; for(int i = 0; i < n; ++i) if(a[i] == x){ k--; if(k == 0) poz = i; } return poz; } return -1; }