fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <climits>
  4.  
  5. using namespace std;
  6.  
  7. void kLargest(vector<int> v, int k){
  8.  
  9. int len = v.size();
  10. if(k < 0 || k > len){ //Base Case
  11. return;
  12. cout<<"enter k\n";
  13. }
  14.  
  15. int temp[k]; //Store temp k values
  16. for(int i = 0; i < k; i++){
  17. temp[i] = v[i];
  18. cout<<"enter k\n";
  19. }
  20.  
  21. for(int i = k; i < len; i++){
  22. cout<<"enter k\n";
  23. int min = INT_MAX;
  24. int minIndex = 0;
  25. for(int j = 0; j < k; j++){
  26. if(temp[j] < min){
  27. min = temp[j];
  28. minIndex = j;
  29. cout<<"enter k\n";
  30. }
  31. }
  32. if(v[i] > min){
  33. temp[minIndex] = v[i]; cout<<"enter k\n";
  34. }
  35. }
  36. for(int i = 0; i < k; i++){
  37. cout<<temp[i] + " ";cout<<"enter k\n";
  38. }
  39. }
  40.  
  41. int main() {
  42. // your code goes here
  43. vector<int> arr;
  44. cout<<"enter numbers\n";
  45. for(int i=0; i<50; i++){
  46. int a;
  47. cin>>a;
  48. if(a==-1) break;
  49. arr.push_back(a);
  50. cout<<"enter k\n";
  51. }
  52.  
  53. int k;
  54. cout<<"enter k";
  55. cin>>k;
  56.  
  57. kLargest(arr,k);
  58.  
  59. return 0;
  60. }
  61.  
Success #stdin #stdout 0s 15240KB
stdin
5 6 19 3 13 389 24 1 56 2 56 -1 3
stdout
enter numbers
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter kenter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
enter k
����enter k
enter k
����enter k