이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
vector<int>ans;
int rec(int l,int r,int arr[],int sum,int k){
int p = 0;
vector<int> v;
while(l<=r){
if(arr[l]+arr[r]>sum){
r--;
p++;
}else if(arr[l]+arr[r]<sum){
l++;
p++;
}else{
v.push_back(arr[l]);
v.push_back(arr[r]);
l++;
r--;
}
}
if(p==k){
ans = v;
return 1;
}else{
return 0;
}
}
int main(){
long long n,k;
cin>>n>>k;
int arr[n+k];
for(int i = 0;i<n+k;i++)cin>>arr[i];
sort(arr,arr+n+k);
for(int i = 0;i<=k;i++){
for(int j = (n+k)-1;j>i;j--){
if(i+(((n+k)-1)-j)<=k){
//cout<<i<<" "<<j<<"\n";
int q = rec(0,(n+k)-1,arr,arr[i]+arr[j],k);
if(q){
sort(ans.begin(),ans.end());
for(auto h:ans){
cout<<h<<" ";
}
return 0;
}
}
}
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |