Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Folk_DIWA
Problemset: จับคู่เลขมงคล
Language: cpp
Time: 0.004 second
Submitted On: 2026-10-14 00:36:05
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main(){
cin.tie(0)->sync_with_stdio(0);
int n; cin >> n;
vector <int> v(n);
unordered_map <int,int> mp;
for(int i=0; i<n; i++) cin >> v[i];
int k; cin >> k;
for(int i=0; i<n; i++){
mp[abs(v[i]-k)] = i;
}
set <pair <int,int>> ans;
for(int i=0; i<n; i++){
if(mp.count(v[i])){
if(mp[v[i]] < mp[abs(v[i]-k)]) ans.insert({mp[v[i]], mp[abs(v[i]-k)]});
else if(mp[v[i]] > mp[abs(v[i]-k)]) ans.insert({mp[abs(v[i]-k)], mp[v[i]]});
}
}
if(ans.empty()){
cout << "No";
return 0;
}
for(auto &s : ans) cout << v[s.first] << ' ' << v[s.second] << '\n';
return 0;
}