fork download
  1. /******************************************************************************
  2.  
  3.   Online C++ Compiler.
  4.   Code, Compile, Run and Debug C++ program online.
  5. Write your code in this editor and press "Run" button to compile and execute it.
  6.  
  7. *******************************************************************************/
  8.  
  9. #include <iostream>
  10. #include <algorithm>
  11. using namespace std;
  12. bool Valid(long long n , long long c ,long long places[] ,long long md){
  13. sort (places , places+ n);
  14. long long last = places[0] , cows = 1;
  15. for (int i = 1 ; i < n ; i ++){
  16. if (places[i] - last >= md){
  17. last = places [i];
  18. cows ++;
  19. }
  20. }
  21. return cows >= c;
  22.  
  23. }
  24. long long BS(long long n , long long c , long long places[]){
  25. long long st = 1 , ed = 1e9+5 , md ,ans;
  26. while (st <= ed){
  27. md = (st + ed)/2;
  28. cout << md << "\n";
  29. if (Valid(n , c , places , md)){
  30. st = md +1;
  31. ans = md;
  32. }
  33. else {
  34. ed = md -1;
  35. }
  36. }
  37. return ans;
  38. }
  39. int main()
  40. {
  41. int t;
  42. cin >> t;
  43. while (t--){
  44. long long n , c , places[100005];
  45. cin >> n >> c;
  46. for (int i = 0 ; i < n ; i ++){
  47. cin >> places [i];
  48. }
  49. cout << BS(n , c , places);
  50. }
  51.  
  52. return 0;
  53. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
Standard output is empty