제출 #592920

#제출 시각아이디문제언어결과실행 시간메모리
592920Luxry사탕 분배 (IOI21_candies)C++17
3 / 100
5065 ms13272 KiB
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;

vector<int> distribute_candies(vector<int> c, vector<int> l, vector<int> r, vector<int> v) {
	vector<int> s(c.size());
	for (int j = 0; j < v.size(); ++j) {
		if (v[j] > 0) {
			for (int k = l[j]; k <= r[j]; ++k) {
				s[k] = min(c[k], s[k] + v[j]);
			}
		}
		else if (v[j] < 0) {
			for (int k = l[j]; k <= r[j]; ++k) {
				s[k] = max(0, s[k] + v[j]);
			}
		}
	}
	return s;
}

int solve()
{
	int n;
	cin >> n;
	vector<int> c(n);

	for (int i = 0; i < n; ++i) {
		cin >> c[i];
	}

	int q;
	cin >> q;
	vector<int> l(q), r(q), v(q);

	for (int i = 0; i < q; ++i) {
		cin >> l[i], r[i], v[i];
	}

	vector<int> result = distribute_candies(c, l, r, v);
	for (int i = 0; i < n; ++i) {
		cout << result[i] << " ";
	}
}

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

candies.cpp: In function 'std::vector<int> distribute_candies(std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>)':
candies.cpp:8:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    8 |  for (int j = 0; j < v.size(); ++j) {
      |                  ~~^~~~~~~~~~
candies.cpp: In function 'int solve()':
candies.cpp:45:1: warning: no return statement in function returning non-void [-Wreturn-type]
   45 | }
      | ^
#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...