fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main(){
  5. long long n, x; cin >> n >> x;
  6.  
  7. vector<pair<long long, long long>> a(n);
  8.  
  9. for (long long i = 0; i < n; i++){
  10. cin >> a[i].first;
  11. a[i].second = i+1;
  12. }
  13.  
  14. for (long long i = 0; i < n; i++){
  15. long long temp = x - a[i].first;
  16.  
  17. long long l = 0;
  18. long long r = n-1;
  19.  
  20. while (l < i && i < r){
  21. if (a[l].first + a[r].first == temp){ cout << a[l].second << ' ' << a[i].second << ' ' << a[r].second;
  22. return 0;
  23. }
  24. else if (a[l].first + a[r].first < temp){
  25. l++;
  26. }
  27. else r--;
  28. }
  29. }
  30.  
  31. cout << "IMPOSSIBLE\n";
  32. }
Success #stdin #stdout 0.01s 5292KB
stdin
4 8
2 7 5 1
stdout
1 3 4