Submission #227839

# Submission time Handle Problem Language Result Execution time Memory
227839 2020-04-29T02:32:06 Z blacktulip Table Tennis (info1cup20_tabletennis) C++17
100 / 100
1713 ms 4456 KB
#include <bits/stdc++.h>
 
using namespace std;
 
typedef long long lo;
typedef pair< lo,lo > PII;
 
#define fi first
#define se second
#define mp make_pair
#define pb push_back
#define int long long
#define fio() ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL)
#define FOR for(int i=1;i<=n;i++)
#define mid ((start+end)/2)
#define ort ((bas+son)/2)
 
const lo MAX = -1000000000000000000;
const lo MIN = 1000000000000000000;
const lo inf = 1000000000;
const lo KOK = 100000;
const lo LOG = 30;
const lo li = 500005;
const lo mod = 1000000007;
 
int n,m,b[li],a[li],k,flag,t,sum;
int cev;
string s;
//~ map<int,int> mpp;
vector<int> v;
 
main(void){
	scanf("%lld %lld",&n,&k);
	for(int i=1;i<=n+k;i++)scanf("%lld",&a[i]);
	for(int i=k+1;i>=1;i--){
		for(int j=n+k;j>=n+k-k+(i-1);j--){
			int bas=i;
			int son=j;
			flag=0;
			cev=0;
			v.clear();
			int at=k-i+1-(n+k-(j));
			//~ printf("%d\n",v.size());
			while(bas<son && at>=0){
				
				if(a[bas]+a[son]==a[i]+a[j]){v.pb(a[bas]);v.pb(a[son]);bas++;son--;cev++;}
				else if(a[bas]+a[son]<a[i]+a[j]){at--;bas++;}
				else if(a[bas]+a[son]>a[i]+a[j]){at--;son--;}
				if(cev>=n/2){flag=1;break;}
			}
			if(flag==1){
				sort(v.begin(),v.end());
				for(int i=0;i<(int)v.size();i++){
					printf("%lld ",v[i]);
				}
				return 0;
			}
		}
	}
	return 0;
}

Compilation message

tabletennis.cpp:32:10: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main(void){
          ^
tabletennis.cpp: In function 'int main()':
tabletennis.cpp:33:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld %lld",&n,&k);
  ~~~~~^~~~~~~~~~~~~~~~~~~
tabletennis.cpp:34:30: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for(int i=1;i<=n+k;i++)scanf("%lld",&a[i]);
                         ~~~~~^~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 11 ms 1020 KB Output is correct
2 Correct 51 ms 4328 KB Output is correct
3 Correct 55 ms 4264 KB Output is correct
4 Correct 50 ms 4328 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 51 ms 4328 KB Output is correct
2 Correct 51 ms 4324 KB Output is correct
3 Correct 53 ms 4328 KB Output is correct
4 Correct 52 ms 4328 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 4 ms 384 KB Output is correct
3 Correct 5 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 512 KB Output is correct
6 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 59 ms 4456 KB Output is correct
3 Correct 49 ms 4324 KB Output is correct
4 Correct 50 ms 4324 KB Output is correct
5 Correct 52 ms 4328 KB Output is correct
6 Correct 50 ms 4328 KB Output is correct
7 Correct 52 ms 4328 KB Output is correct
8 Correct 52 ms 4324 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 69 ms 256 KB Output is correct
2 Correct 51 ms 4328 KB Output is correct
3 Correct 70 ms 4324 KB Output is correct
4 Correct 53 ms 4324 KB Output is correct
5 Correct 1713 ms 4324 KB Output is correct
6 Correct 49 ms 4328 KB Output is correct
7 Correct 54 ms 4328 KB Output is correct
8 Correct 68 ms 4456 KB Output is correct