Submission #373230

# Submission time Handle Problem Language Result Execution time Memory
373230 2021-03-03T21:53:03 Z ahmedfouadnew Table Tennis (info1cup20_tabletennis) C++17
Compilation error
0 ms 0 KB
#include<bits/stdc++.h>
using namespace std;
#define s second
#define f first
#define pb push_back
#define int long long
#define double long double
int n,k;
int a[200005];
unordered_map<int,int>mp;
int mx,mxi;
void fun(int ii,int s,int e)
{
    e=min(e,n+k-1);
    s=max(0ll,s);
    for(int i=s;i<=e;i++)
    {
        if(i==ii) continue;
        mp[a[ii]+a[i]]++;
        if(mp[a[ii]+a[i]]>mx)
        {
            mx=mp[a[ii]+a[i]];
            mxi=a[ii]+a[i];
        }
    }
}
signed main()
{
  cin>>n>>k;
  for(int i=0;i<n+k;i++)
  {
      cin>>a[i];
  }
  sort(a,a+n+k);
  for(int i=0;i<n+k;i++)
  {
      fun(a[i],(n+k-1-i)-k,(n+k-1-i)+k);
  }
  vector<int>ans;
  int cnt=n;
  int e=n+k-1;
  for(int i=0;i<n+k;i++)
  {
      int cur=e;
      bool ok=0;
      while(e-cur<=k)
      {
          if(a[i]+a[cur]==mxi)
          {
              ok=1;
              ans.pb(a[i]);
              ans.pb(a[cur]);
              break;
          }
          cur--;
      }
      if(ok)
      {
          cnt-=2;
          e=cur-1;
      }
      if(cnt==0) break;
  }
  sort(ans.begin(),ans.end());
  for(int i=0;i<ans.size();i++)
  {
      cout<<ans[i]<<" \n"[i+1==ans.size()];
  }
     return 0;
}
#include<bits/stdc++.h>
using namespace std;
#define s second
#define f first
#define pb push_back
#define int long long
#define double long double
int n,k;
int a[200005];
unordered_map<int,int>mp;
int mx,mxi;
void fun(int ii,int s,int e)
{
    e=min(e,n+k-1);
    s=max(0ll,s);
    for(int i=s;i<=e;i++)
    {
        if(i==ii) continue;
        mp[a[ii]+a[i]]++;
        if(mp[a[ii]+a[i]]>mx)
        {
            mx=mp[a[ii]+a[i]];
            mxi=a[ii]+a[i];
        }
    }
}
signed main()
{
  cin>>n>>k;
  for(int i=0;i<n+k;i++)
  {
      cin>>a[i];
  }
  sort(a,a+n+k);
  for(int i=0;i<n+k;i++)
  {
      fun(a[i],(n+k-1-i)-k,(n+k-1-i)+k);
  }
  vector<int>ans;
  int cnt=n;
  int e=n+k-1;
  for(int i=0;i<n+k;i++)
  {
      int cur=e;
      bool ok=0;
      while(e-cur<=k)
      {
          if(a[i]+a[cur]==mxi)
          {
              ok=1;
              ans.pb(a[i]);
              ans.pb(a[cur]);
              break;
          }
          cur--;
      }
      if(ok)
      {
          cnt-=2;
          e=cur-1;
      }
      if(cnt==0) break;
  }
  sort(ans.begin(),ans.end());
  for(int i=0;i<ans.size();i++)
  {
      cout<<ans[i]<<" \n"[i+1==ans.size()];
  }
     return 0;
}

Compilation message

tabletennis.cpp: In function 'int main()':
tabletennis.cpp:65:16: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |   for(int i=0;i<ans.size();i++)
      |               ~^~~~~~~~~~~
tabletennis.cpp:67:30: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   67 |       cout<<ans[i]<<" \n"[i+1==ans.size()];
      |                           ~~~^~~~~~~~~~~~
tabletennis.cpp: At global scope:
tabletennis.cpp:78:5: error: redefinition of 'long long int n'
   78 | int n,k;
      |     ^
tabletennis.cpp:8:5: note: 'long long int n' previously declared here
    8 | int n,k;
      |     ^
tabletennis.cpp:78:7: error: redefinition of 'long long int k'
   78 | int n,k;
      |       ^
tabletennis.cpp:8:7: note: 'long long int k' previously declared here
    8 | int n,k;
      |       ^
tabletennis.cpp:79:5: error: redefinition of 'long long int a [200005]'
   79 | int a[200005];
      |     ^
tabletennis.cpp:9:5: note: 'long long int a [200005]' previously declared here
    9 | int a[200005];
      |     ^
tabletennis.cpp:80:23: error: redefinition of 'std::unordered_map<long long int, long long int> mp'
   80 | unordered_map<int,int>mp;
      |                       ^~
tabletennis.cpp:10:23: note: 'std::unordered_map<long long int, long long int> mp' previously declared here
   10 | unordered_map<int,int>mp;
      |                       ^~
tabletennis.cpp:81:5: error: redefinition of 'long long int mx'
   81 | int mx,mxi;
      |     ^~
tabletennis.cpp:11:5: note: 'long long int mx' previously declared here
   11 | int mx,mxi;
      |     ^~
tabletennis.cpp:81:8: error: redefinition of 'long long int mxi'
   81 | int mx,mxi;
      |        ^~~
tabletennis.cpp:11:8: note: 'long long int mxi' previously declared here
   11 | int mx,mxi;
      |        ^~~
tabletennis.cpp:82:6: error: redefinition of 'void fun(long long int, long long int, long long int)'
   82 | void fun(int ii,int s,int e)
      |      ^~~
tabletennis.cpp:12:6: note: 'void fun(long long int, long long int, long long int)' previously defined here
   12 | void fun(int ii,int s,int e)
      |      ^~~
tabletennis.cpp:97:8: error: redefinition of 'int main()'
   97 | signed main()
      |        ^~~~
tabletennis.cpp:27:8: note: 'int main()' previously defined here
   27 | signed main()
      |        ^~~~
tabletennis.cpp: In function 'int main()':
tabletennis.cpp:135:16: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  135 |   for(int i=0;i<ans.size();i++)
      |               ~^~~~~~~~~~~
tabletennis.cpp:137:30: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  137 |       cout<<ans[i]<<" \n"[i+1==ans.size()];
      |                           ~~~^~~~~~~~~~~~