bogdanNiculeasa

https://www.pbinfo.ro/probleme/4037/cautariliniare

Jul 24th, 2023
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7. int n, x, k;
  8. cin >> n;
  9. int numere[n];
  10. for (int i =0; i < n; i++) {
  11. cin >> numere[i];
  12. }
  13. cin >> x >> k;
  14.  
  15. int pozitieStangaP = 0;
  16. // a=> afisam cea mai din stangga pozitie p din sir cu a[p] = x
  17. for (int i = 0; i < n; i++) {
  18. if (numere[i] == x) {
  19. pozitieStangaP = i+1;
  20. break;
  21. }
  22. }
  23.  
  24. int pozitieDreaptaQ = 0;
  25. // b => cea mai din dreapta pozitie q din sir cu a[q] = x;
  26. for(int i = n-1; i >= 0; i--) {
  27. if(numere[i] == x) {
  28. pozitieDreaptaQ = i+1;
  29. break;
  30. }
  31. }
  32.  
  33. // c) Pozitia r a celei de-a k-a aparitii a lui x în sir.
  34. int aparitiiCurente =0, pozitieR = 0;
  35. for (int i =0; i < n; i++) {
  36. if (numere[i] == x) {
  37. aparitiiCurente++;
  38. if (aparitiiCurente == k) {
  39. pozitieR = i+1;
  40. break;
  41. }
  42. }
  43. }
  44. cout << pozitieStangaP << endl << pozitieDreaptaQ << endl << pozitieR;
  45. return 0;
  46. }
  47.  
Advertisement
Add Comment
Please, Sign In to add comment