제출 #739753

#제출 시각아이디문제언어결과실행 시간메모리
739753Nonoze메기 농장 (IOI22_fish)C++17
3 / 100
89 ms14656 KiB
#include "fish.h"

#include <bits/stdc++.h>
using namespace std;



long long max_weights(int n, int m, vector<int> X, vector<int> Y, vector<int> W) {
	#define int long long
	bool tacha=true, tachb=true, tachc=true;
	for (int i = 0; i < m; ++i)
	{
		if (X[i]%2) tacha=false;
		if (X[i]>1) tachb=false;
		if (Y[i]) tachc=false;
	}
	if (tacha)
	{
		int ans=0;
		for (int i = 0; i < m; ++i) ans+=W[i];
		return ans;
	}
	if (tachb)
	{
		int sommegauche=0, sommeact=0;
		vector<pair<pair<int, int>, int>> poissons;
		for (int i = 0; i < m; ++i)
		{
			if (X[i]==0) sommegauche+=W[i];
			else sommeact+=W[i];
			poissons.push_back({{Y[i], X[i]}, W[i]});
		}
		if(n<=2) return max(sommegauche, sommeact);
		sort(poissons.begin(), poissons.end());
		int ans=0;
		for (int i = 0; i < m; ++i)
		{
			int x=poissons[i].first.second, y=poissons[i].first.first, w=poissons[i].second;
			if (x==0)
			{
				sommeact+=w;
				if (i<m-1 && poissons[i+1].first.second==1 && poissons[i+1].first.first==y)
				{
					sommeact-=poissons[i+1].second;
					i++;
				}
			}
			else {
				sommeact-=w;
			}
			ans=max(ans, sommeact);
		}
		return ans;
	}
	#undef int
	return 0;
}

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

fish.cpp: In function 'long long int max_weights(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
fish.cpp:10:31: warning: variable 'tachc' set but not used [-Wunused-but-set-variable]
   10 |  bool tacha=true, tachb=true, tachc=true;
      |                               ^~~~~
#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...