Untitled
unknown
plain_text
2 years ago
962 B
10
Indexable
void solution() { vector<pair<ll,ll>>vop; ll n,sum; cin >> n >> sum; for(ll i=0; i<n; i++) { ll x; cin >> x; vop.pb({x,i+1}); } sort(vop.begin(),vop.end()); map<vector<ll>,int>mpv; for(ll i=0; i<vop.size(); i++) { ll x = i; ll y = i+1; ll z = n-1; while(y < z) { ll sum2 = vop[x].f + vop[y].f + vop[z].f; if(sum2 == sum) { vector<ll>temp; temp.pb(vop[x].f); temp.pb(vop[y].f); temp.pb(vop[z].f); if(mpv[temp] == 0) { print(temp); mpv[temp] = 1; } } if(sum2 < sum) { y++; } else { z--; } } } }
Editor is loading...