Advertisement
Guest User

PIZDONCHIK

a guest
Aug 18th, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. #define ll long long
  3. using namespace std;
  4. int main ()
  5. {
  6. //freopen("in.txt", "r", stdin);
  7. //freopen("out.txt", "w", stdout);
  8. ios::sync_with_stdio();cin.tie();
  9. ll n;
  10. cin >> n;
  11. vector<pair<int, int>> ans(n);
  12. for(int i = 0; i < n; i++){
  13. ll m;
  14. cin >> m;
  15. set<int> s1;
  16. map<int, int> mapik;
  17. for(int j = 0; j < m; j++){
  18. int x;
  19. cin >> x;
  20. if(s1.find(x) == s1.end()){
  21. mapik.insert({x, 1});
  22. s1.insert(x);
  23. }
  24. else mapik[x]++;
  25. }
  26. int k = 0;
  27. vector<int> gr;
  28. for(auto j = s1.begin(); j != s1.end(); j++){
  29. int r = *(j);
  30. if(mapik[r] >= 4){
  31. k = 1;
  32. ans[i] = {r, r};
  33. }
  34. if(mapik[r] >= 2)
  35. gr.push_back(r);
  36. }
  37. sort(gr.begin(), gr.end());
  38. if(k == 0){
  39. long double minn = 1000000000;
  40. ll x, y;
  41. for(int j = 1; j < gr.size(); j++)
  42. {
  43. long double x1 = gr[j];
  44. long double x2 = gr[j - 1];
  45. long double cur = (long double) ((x1 * x1 + x2 * x2) / (x1 * x2));
  46. if(cur < minn){
  47. minn = cur;
  48. x = gr[j];
  49. y = gr[j - 1];
  50. }
  51. }
  52. ans[i] = {x, y};
  53. }
  54. }
  55. for(int i = 0; i < n; i++)
  56. cout << ans[i].first << ' ' << ans[i].first << ' ' << ans[i].second << ' ' << ans[i].second << endl;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement