제출 #833534

#제출 시각아이디문제언어결과실행 시간메모리
833534TrumlingCatfish Farm (IOI22_fish)C++17
0 / 100
79 ms15680 KiB
#include "fish.h"
#include<bits/stdc++.h>
using namespace std;

#define F first
#define S second
#define all(x) x.begin(),x.end()
typedef long long ll;
#define pb push_back
#define INF 9999999999999999

long long max_weights(int N, int M, vector<int> X, vector<int> Y,vector<int> W) 
{
  ll sum1=0,sum2=0;
  vector<pair<ll,ll>>z,o;

  for(int i=0;i<M;i++)
  {
    if(X[i])
    {
      sum1+=W[i];
      o.pb({i,W[i]});
    }
    else
    {
      sum2+=W[i];
      z.pb({i,W[i]});
    }

  }
  sort(all(z));
  sort(all(o));

  if(N==2)
  return max(sum1,sum2);

  ll maxi=max(sum1,sum2);

  ll idx=0,l=0,r=0;
  for(int i=0;i<z.size();i++)
  {
    l+=z[i].S;
    while(idx!=o.size() && o[idx].F<z[i].F)
    {
      r+=o[idx].S;
      idx++;
    }

    maxi=max(maxi,l+sum1-r);
  }

  return maxi;
}

컴파일 시 표준 에러 (stderr) 메시지

fish.cpp: In function 'long long int max_weights(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
fish.cpp:40:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |   for(int i=0;i<z.size();i++)
      |               ~^~~~~~~~~
fish.cpp:43:14: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |     while(idx!=o.size() && o[idx].F<z[i].F)
      |           ~~~^~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...