CCCPaste

Untitled

#include 
using namespace std;

int main() {
    int n, k;
    cin >> n >> k;
    vector> v(n);

    for(int i = 0; i < n; i++) {
        cin >> v[i].first;
        v[i].second = i;
    }
    sort(v.begin(), v.end());
    int L = 0, R = n - 1;
    while(L < R) {
        if(v[L].first + v[R].first == k) {
            cout << v[L].second + 1 << " " << v[R].second + 1 << endl;
            return 0;
        }
        if(v[L].first + v[R].first > k) {
            R--;
        }
        else {
            L++;
        }

    }
    cout << "IMPOSSIBLE" << endl;
    return 0;
}