Submission #723869

#TimeUsernameProblemLanguageResultExecution timeMemory
723869NemanjaSo2005카니발 티켓 (IOI20_tickets)C++14
0 / 100
518 ms101288 KiB
#include<bits/stdc++.h>
#include "tickets.h"
#define ll long long
using namespace std;
ll N,M,K,vred=0,pok[1505];
vector<vector<int>> kako,koliko;
struct slog{
   int gde;
   ll dob;
   bool operator < (const slog &a) const{
      return dob<a.dob;
   }
}pp;
priority_queue<slog> PQ;
void stavi(int gde){
   pp.gde=gde;
   pp.dob=koliko[gde][pok[gde]]+koliko[gde][pok[gde]+M-K];
   PQ.push(pp);
   return;
}
ll find_maximum(int k,vector<vector<int>> d){
   kako=d;
   koliko=d;
   for(int i=0;i<kako.size();i++)
      for(int j=0;j<kako[i].size();j++)
         kako[i][j]=-1;
   K=k;
   N=d.size();
   M=d[0].size();
   for(int i=0;i<N;i++){
      pok[i]=K-1;
      for(int j=0;j<K;j++){
         kako[i][j]=j;
         vred-=koliko[i][j];
      }
      stavi(i);
   }
   for(int it=1;it<=N*K/2;it++){
      int gde=PQ.top().gde;
      vred+=PQ.top().dob;
      PQ.pop();
      kako[gde][pok[gde]+M-K]=kako[gde][pok[gde]];
      kako[gde][pok[gde]]=-1;
      pok[gde]--;
      stavi(gde);
   }
   allocate_tickets(kako);
   return vred;
}

Compilation message (stderr)

tickets.cpp: In function 'long long int find_maximum(int, std::vector<std::vector<int> >)':
tickets.cpp:24:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |    for(int i=0;i<kako.size();i++)
      |                ~^~~~~~~~~~~~
tickets.cpp:25:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 |       for(int j=0;j<kako[i].size();j++)
      |                   ~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...