답안 #436322

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
436322 2021-06-24T12:30:43 Z gromperen 사탕 분배 (IOI21_candies) C++17
컴파일 오류
0 ms 0 KB
#include "candies.h"
#include <bits/stdc++.h>

using namespace std;

std::vector<int> distribute_candies(std::vector<int> c, std::vector<int> l,
		std::vector<int> r, std::vector<int> v) {
	int n = c.size();
	int q = l.size();
	vector<int> s(n);
	vector<long long> pre(n+1);

	for (int i = 0; i < q; ++i) {
		pre[l[i]] += v;
		pre[r[i]+1] -= v;
	}
	for (int i = 0; i < n; ++i) {
		if (i > 0) pre[i] += pre[i-1];
		s[i] = max(pre[i], 1LL * c[i]);
	}
	return s;
}

Compilation message

candies.cpp: In function 'std::vector<int> distribute_candies(std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>)':
candies.cpp:14:13: error: no match for 'operator+=' (operand types are '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} and 'std::vector<int>')
   14 |   pre[l[i]] += v;
candies.cpp:15:15: error: no match for 'operator-=' (operand types are '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} and 'std::vector<int>')
   15 |   pre[r[i]+1] -= v;