Submission #717377

# Submission time Handle Problem Language Result Execution time Memory
717377 2023-04-01T21:57:16 Z MrM7md Table Tennis (info1cup20_tabletennis) C++17
72 / 100
3000 ms 333444 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define F first
#define S second
#define pb push_back
#define all(a) a.begin(),a.end()
const int N=1e5;
const int off=(1<<20);
const int MOD = 1e9+7;


signed main(){
   ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
   int n,k;
   cin >> n >> k;
   int sz=n+k;
   int a[sz];
   unordered_map<int,bool>mp;
   for(int i=0;i<sz;i++){
      cin >>a[i];
      mp[a[i]]=1;
   }
   sort(a,a+sz);

   vector<int>v;
   for(int i=0;i<=k;i++){
      for(int j=0;j<=k-i;j++){
         v.pb(a[i]+a[sz-j-1]);
         // cout<<v.back()<<' ';
      }
   }
   // cout<<v.size()<<endl;
   int h[v.size()]={0};

   for(int i=0;i<sz;i++){
      for(int j=0;j<v.size();j++){
         if(a[i]!=v[j]-a[i]){
            if(!mp[v[j]-a[i]]){
               if(h[j]<k&&h[j]>=0)h[j]++;
               else h[j]=-1;
            }
         }
         else{
            if(h[j]<k&&h[j]>=0)h[j]++;
            else h[j]=-1;
         }
      }
   }
   int ans;
   for(int i=0;i<v.size();i++){
      if(h[i]>-1)ans=v[i];
      // cout<<pp[i].F<<' '<<pp[i].S;

   }

   for(int i=0;i<sz;i++){
      if(mp[ans-a[i]]&&ans-a[i]!=a[i])cout<<a[i]<<' ';
   }

}
/*

*/

Compilation message

tabletennis.cpp: In function 'int main()':
tabletennis.cpp:38:20: 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]
   38 |       for(int j=0;j<v.size();j++){
      |                   ~^~~~~~~~~
tabletennis.cpp:52:17: 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]
   52 |    for(int i=0;i<v.size();i++){
      |                ~^~~~~~~~~
tabletennis.cpp:59:16: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
   59 |       if(mp[ans-a[i]]&&ans-a[i]!=a[i])cout<<a[i]<<' ';
      |             ~~~^~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 596 KB Output is correct
2 Correct 1 ms 468 KB Output is correct
3 Correct 1 ms 596 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 1444 KB Output is correct
2 Correct 218 ms 22560 KB Output is correct
3 Correct 219 ms 22528 KB Output is correct
4 Correct 242 ms 22524 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 368 ms 40704 KB Output is correct
2 Correct 451 ms 42472 KB Output is correct
3 Correct 408 ms 40680 KB Output is correct
4 Correct 404 ms 42396 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 205 ms 24508 KB Output is correct
2 Correct 96 ms 19652 KB Output is correct
3 Correct 159 ms 22564 KB Output is correct
4 Correct 311 ms 39528 KB Output is correct
5 Correct 189 ms 22532 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 596 KB Output is correct
2 Correct 59 ms 9792 KB Output is correct
3 Correct 153 ms 20364 KB Output is correct
4 Correct 135 ms 19596 KB Output is correct
5 Correct 11 ms 2608 KB Output is correct
6 Correct 8 ms 1492 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 564 KB Output is correct
2 Execution timed out 3054 ms 333444 KB Time limit exceeded
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3042 ms 330056 KB Time limit exceeded
2 Halted 0 ms 0 KB -