Submission #227799

# Submission time Handle Problem Language Result Execution time Memory
227799 2020-04-28T23:18:17 Z blacktulip Table Tennis (info1cup20_tabletennis) C++17
24 / 100
3000 ms 509628 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,mx;
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=1;i<=2*k+100;i++){
		for(int j=i+1;j<=n+k;j++){
			mpp[a[i]+a[j]]++;
			if(mpp[a[i]+a[j]]>mx){sum=a[i]+a[j];mx=mpp[a[i]+a[j]];}
		}
	}
	int bas=1;
	int son=n+k-1;
	flag=0;
	cev=0;
	//~ v.clear();
	//~ printf("%d\n",v.size());
	while(bas<son){
		
		if(a[bas]+a[son]==sum){v.pb(a[bas]);v.pb(a[son]);bas++;son--;cev++;}
		else if(a[bas]+a[son]<sum){bas++;}
		else if(a[bas]+a[son]>sum){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 Incorrect 65 ms 11512 KB Unexpected end of file - int32 expected
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 336 ms 1920 KB Unexpected end of file - int32 expected
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3099 ms 466904 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 7 ms 896 KB Output is correct
2 Correct 9 ms 1280 KB Output is correct
3 Correct 9 ms 1280 KB Output is correct
4 Correct 9 ms 1280 KB Output is correct
5 Correct 10 ms 1280 KB Output is correct
# 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 4 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Incorrect 40 ms 2304 KB Unexpected end of file - int32 expected
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Execution timed out 3040 ms 345352 KB Time limit exceeded
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 36 ms 6016 KB Output is correct
2 Execution timed out 3111 ms 509628 KB Time limit exceeded
3 Halted 0 ms 0 KB -