답안 #365968

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
365968 2021-02-12T15:35:00 Z aihay Table Tennis (info1cup20_tabletennis) C++14
100 / 100
89 ms 4452 KB
#pragma GCC optimize ("O3")
#pragma GCC optimize ("unroll-loops")
#pragma GCC optimize("-Ofast")
#include <bits/stdc++.h>
using namespace std;

typedef int in;
#define int long long
#define f first
#define s second
#define pb push_back
#define pp push
#define ceil(x) NEVER USE CEIL
#define sqrt(x) (int)(sqrt(x))
const int MAX=1e7;
const int MOD=1e9+7;
const int MAAX=1e18;

vector<int>v;
int arr[150410],n,k;
bool fun(int l,int r,int x,int sum){
    int s=l,e=r;
    v.clear();
    while((e-s+1)>sum){
        if(arr[s]+arr[e]==x){
            v.pb(arr[s]);
            v.pb(arr[e]);
            s++,e--;
        }
        else if(arr[s]+arr[e]>x&&sum>0){
            e--,sum--;
        }
        else if(sum>0){
            s++,sum--;
        }
        else
            return 0;
    }
    return 1;
}
in main()
{
    iostream::sync_with_stdio(0);
    int tc=1;
    //cin>>tc;
    while(tc--){
        cin>>n>>k;
        for(int i=0;i<n+k;i++)
            cin>>arr[i];
        for(int i=0;i<n+k;i++){
            for(int l=n+k-1;l>=n-1+i;l--){
                if(fun(i+1,l-1,arr[i]+arr[l],k-((n+k-1)-l+i))){
                    v.pb(arr[i]);
                    v.pb(arr[l]);
                    sort(v.begin(),v.end());
                    for(int i=0;i<n;i++)
                        cout<<v[i]<<" ";
                    return 0;
                }
            }
        }
    }
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 8 ms 1008 KB Output is correct
2 Correct 41 ms 4324 KB Output is correct
3 Correct 42 ms 4324 KB Output is correct
4 Correct 41 ms 4324 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 46 ms 4324 KB Output is correct
2 Correct 43 ms 4324 KB Output is correct
3 Correct 44 ms 4324 KB Output is correct
4 Correct 41 ms 4388 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 380 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 492 KB Output is correct
3 Correct 0 ms 364 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 396 KB Output is correct
2 Correct 50 ms 4324 KB Output is correct
3 Correct 52 ms 4324 KB Output is correct
4 Correct 41 ms 4324 KB Output is correct
5 Correct 41 ms 4324 KB Output is correct
6 Correct 41 ms 4324 KB Output is correct
7 Correct 41 ms 4324 KB Output is correct
8 Correct 42 ms 4324 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 61 ms 4324 KB Output is correct
3 Correct 41 ms 4324 KB Output is correct
4 Correct 58 ms 4324 KB Output is correct
5 Correct 42 ms 4324 KB Output is correct
6 Correct 50 ms 4452 KB Output is correct
7 Correct 89 ms 4324 KB Output is correct
8 Correct 41 ms 4324 KB Output is correct