제출 #302540

#제출 시각아이디문제언어결과실행 시간메모리
302540circlethm카니발 티켓 (IOI20_tickets)C++17
0 / 100
3070 ms384 KiB
#include "tickets.h"
#include <vector>
#include <cmath>
#include <iostream>

using namespace std;

typedef vector<int> vi;
typedef pair<int, int> pi;
typedef long long ll;

ll get_sum(vi elements, int b)
{
	ll total = 0;
	int n = elements.size();

	for (int i = 0; i < n; i++)
	{
		total += abs(b - elements[i]);
	}

	return total;
}

ll find_min_sum(vi elements, int max)
{
	ll min_sum = 10E11;
	int opt_b = 0;
	for (int b = 0; b < max; b++)
	{
		ll sum = get_sum(elements, b);
		// cout << "b: " << sum << endl;
		if (sum < min_sum)
		{
			min_sum = sum;
			opt_b = b;
		}
	}
	// cout << "b: " << opt_b << " -> " << min_sum << endl;

	return min_sum;
}

long long find_maximum(int k, std::vector<std::vector<int>> x)
{
	// int n = x.size();
	// int m = x[0].size();
	// std::vector<std::vector<int>> answer;
	// for (int i = 0; i < n; i++) {
	// 	std::vector<int> row(m);
	// 	for (int j = 0; j < m; j++) {
	// 		if (j < k) {
	// 			row[j] = j;
	// 		} else {
	// 			row[j] = -1;
	// 		}
	// 	}
	// 	answer.push_back(row);
	// }
	// allocate_tickets(answer);
	// return 1;
	int n = x.size();
	// int m = x[0].size();

	vi elements;
	vector<vi> answer;
	int max = -1;

	for (int i = 0; i < n; i++)
	{
		vi row = {0};
		answer.push_back(row);
		int current_el = x[i][0];
		if (current_el > max)
			max = current_el;
		elements.push_back(current_el);
	}

	allocate_tickets(answer);
	return find_min_sum(elements, max);
}

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

tickets.cpp: In function 'll find_min_sum(vi, int)':
tickets.cpp:28:6: warning: variable 'opt_b' set but not used [-Wunused-but-set-variable]
   28 |  int opt_b = 0;
      |      ^~~~~
#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...