fork download
  1. #include <iostream>
  2. #include <map>
  3. #include <vector>
  4. using namespace std;
  5.  
  6. int main() {
  7.  
  8. int n,x;
  9. cin>>n>>x;
  10.  
  11. int a[n];
  12. map<int,vector<int> > Map;
  13. for(int i=0;i<n;i++)
  14. {
  15. cin>>a[i];
  16. Map[a[i]].push_back(i);
  17. }
  18. vector<int> V;
  19. for(int i=0;i<n;i++)
  20. {
  21. if((x-a[i] != a[i]) && Map.count(x-a[i]) > 0)
  22. {
  23. V.push_back(Map[a[i]][0]);
  24. V.push_back(Map[x-a[i]][0]);
  25. break;
  26. }
  27. else if(x-a[i] == a[i] && Map[a[i]].size() > 1)
  28. {
  29. V.push_back(Map[a[i]][0]);
  30. V.push_back(Map[a[i]][1]);
  31. break;
  32. }
  33. }
  34.  
  35. if(V.size() ==2)
  36. {
  37. cout<<V[0]+1<<" "<<V[1]+1<<endl;
  38. }
  39. else
  40. {
  41. cout<<"IMPOSSIBLE"<<endl;
  42. }
  43.  
  44.  
  45.  
  46.  
  47. return 0;
  48. }
Success #stdin #stdout 0s 5292KB
stdin
4 8
2 7 5 1
stdout
2 4