답안 #584657

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
584657 2022-06-27T18:40:59 Z Blagojce 쌀 창고 (IOI11_ricehub) C++11
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>
#include "ricehub.h"

using namespace std;


int besthub(int R, int L, int X[], long long B)
{
	//but did you try long long?
	int temp_budget = 0;
	int len = 1;
	long long ans = 0;
	int l = 0, r = 0;
	for(int i = 0; i < R; i ++){
			if(r < i){
				r = i;
				l = i;
				len = 1;
			}
			if(i - l > r - i){
				temp_budget -= X[i] - X[l];
				--len;
				++l;
			}
			bool change = true;
			while(change){
				change = false;
				if(i - l < r - i){
					if(l > 0 && temp_budget + X[i] - X[l-1] <= B){
						temp_budget += X[i] - X[l-1];
						++len;
						--l;
						change = true;
					}
				}
				else{
					if(r + 1 < R && temp_budget + X[r+1] - X[i] <= B){
						temp_budget += X[r+1] - X[i];
						++len;
						++r;
						change = true;
					}
				}
			}
		
			
			ans = max(ans, len);
	}
	return ans;
}

Compilation message

ricehub.cpp: In function 'int besthub(int, int, int*, long long int)':
ricehub.cpp:47:22: error: no matching function for call to 'max(long long int&, int&)'
   47 |    ans = max(ans, len);
      |                      ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from ricehub.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)'
  254 |     max(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:254:5: note:   template argument deduction/substitution failed:
ricehub.cpp:47:22: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   47 |    ans = max(ans, len);
      |                      ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from ricehub.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
  300 |     max(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:300:5: note:   template argument deduction/substitution failed:
ricehub.cpp:47:22: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   47 |    ans = max(ans, len);
      |                      ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from ricehub.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: candidate: 'template<class _Tp> _Tp std::max(std::initializer_list<_Tp>)'
 3480 |     max(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3480:5: note:   template argument deduction/substitution failed:
ricehub.cpp:47:22: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   47 |    ans = max(ans, len);
      |                      ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from ricehub.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: candidate: 'template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)'
 3486 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3486:5: note:   template argument deduction/substitution failed:
ricehub.cpp:47:22: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   47 |    ans = max(ans, len);
      |                      ^