답안 #112057

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
112057 2019-05-17T08:08:20 Z lauzm0 Two Antennas (JOI19_antennas) C++14
컴파일 오류
0 ms 0 KB
#include <iostream>
#include<vector>
#include<cmath>
 
using namespace std;
 
struct antenna {
	int l; int r; long long h;
};
 
int main()
{
	int n;
	cin >> n;
	vector<antenna> ant(n); vector<vector<int> >max(n,vector<long long >(n,-1));
	for (int i = 0; i < n; i++) {
		cin >> ant[i].h >> ant[i].l >> ant[i].r;
	}

	for(int a = 0 ; a< n-1 ; a++){
		long long mxx = -1;
		for(int b = a+1 ; b<n ; b++){
			bool rangealeft = false; bool rangearight = false; bool rangebleft = false; bool rangebright = false;
 
				if (a - ant[a].l >= b && a - ant[a].r <= b) {
					rangealeft = true;
				}
				if (b - ant[b].l >= a && b - ant[b].r <= a) {
					rangebleft = true;
				}
				if (a + ant[a ].l <= b && a + ant[a].r >= b) {
					rangearight = true;
				}
				if (b + ant[b].l <= a && b + ant[b].r >= a) {
					rangebright = true;
				}
				if ((rangealeft||rangearight)&&(rangebleft||rangebright)) {
					if (abs(ant[a ].h - ant[b ].h) > mxx) {
						mxx= abs(ant[a ].h - ant[b ].h);
					}
				}
				max[a][b]=mxx;
		}
	}

	

	int q ; cin>>q; 
	for(int i = 0 ; i< q ; i++){
		int l ; int r; long long maxima=-1;
		cin>>l>>r;
		for(int j = l ; j< r ; j++){
			if(max[j-1][r-1]>maxima){
				maxima=max[j-1][r-1];
			}
		}
		cout<<maxima<<endl;
		
	}

	

}

Compilation message

antennas.cpp: In function 'int main()':
antennas.cpp:15:76: error: no matching function for call to 'std::vector<std::vector<int> >::vector(int&, std::vector<long long int>)'
  vector<antenna> ant(n); vector<vector<int> >max(n,vector<long long >(n,-1));
                                                                            ^
In file included from /usr/include/c++/7/vector:64:0,
                 from antennas.cpp:2:
/usr/include/c++/7/bits/stl_vector.h:411:2: note: candidate: template<class _InputIterator, class> std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&)
  vector(_InputIterator __first, _InputIterator __last,
  ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:411:2: note:   template argument deduction/substitution failed:
antennas.cpp:15:76: note:   deduced conflicting types for parameter '_InputIterator' ('int' and 'std::vector<long long int>')
  vector<antenna> ant(n); vector<vector<int> >max(n,vector<long long >(n,-1));
                                                                            ^
In file included from /usr/include/c++/7/vector:64:0,
                 from antennas.cpp:2:
/usr/include/c++/7/bits/stl_vector.h:383:7: note: candidate: std::vector<_Tp, _Alloc>::vector(std::initializer_list<_Tp>, const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(initializer_list<value_type> __l,
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:383:7: note:   no known conversion for argument 1 from 'int' to 'std::initializer_list<std::vector<int> >'
/usr/include/c++/7/bits/stl_vector.h:358:7: note: candidate: std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(vector&& __rv, const allocator_type& __m)
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:358:7: note:   no known conversion for argument 1 from 'int' to 'std::vector<std::vector<int> >&&'
/usr/include/c++/7/bits/stl_vector.h:348:7: note: candidate: std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&, const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(const vector& __x, const allocator_type& __a)
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:348:7: note:   no known conversion for argument 1 from 'int' to 'const std::vector<std::vector<int> >&'
/usr/include/c++/7/bits/stl_vector.h:344:7: note: candidate: std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >]
       vector(vector&& __x) noexcept
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:344:7: note:   candidate expects 1 argument, 2 provided
/usr/include/c++/7/bits/stl_vector.h:326:7: note: candidate: std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >]
       vector(const vector& __x)
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:326:7: note:   candidate expects 1 argument, 2 provided
/usr/include/c++/7/bits/stl_vector.h:295:7: note: candidate: std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const value_type&, const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = std::vector<int>; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(size_type __n, const value_type& __value,
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:295:7: note:   no known conversion for argument 2 from 'std::vector<long long int>' to 'const value_type& {aka const std::vector<int>&}'
/usr/include/c++/7/bits/stl_vector.h:283:7: note: candidate: std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(size_type __n, const allocator_type& __a = allocator_type())
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:283:7: note:   no known conversion for argument 2 from 'std::vector<long long int>' to 'const allocator_type& {aka const std::allocator<std::vector<int> >&}'
/usr/include/c++/7/bits/stl_vector.h:270:7: note: candidate: std::vector<_Tp, _Alloc>::vector(const allocator_type&) [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<int> >]
       vector(const allocator_type& __a) _GLIBCXX_NOEXCEPT
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:270:7: note:   candidate expects 1 argument, 2 provided
/usr/include/c++/7/bits/stl_vector.h:259:7: note: candidate: std::vector<_Tp, _Alloc>::vector() [with _Tp = std::vector<int>; _Alloc = std::allocator<std::vector<int> >]
       vector()
       ^~~~~~
/usr/include/c++/7/bits/stl_vector.h:259:7: note:   candidate expects 0 arguments, 2 provided