| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1348533 | faqinyeager | Bitaro the Brave (JOI19_ho_t1) | C++20 | Compilation error | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
const long long int MOD = (int)1e9 + 7;
const long long int mxN = (int)1e5 + 7;
int main(){
int H, W;
cin >> H >> W;
vector<string> s(H);
for(int i = 0; i < H; i++){
cin >> s[i];
}
vector<vector<long long int>> icnt(H, vector<long long int>(W, 0)), ocnt(H, vector<int>(W, 0));
for(int j = 0; j < W; j++){
if(s[H - 1][j] == 'I') icnt[H - 1][j]++;
}
for(int i = H - 2; i >= 0; i--){
for(int j = 0; j < W; j++){
icnt[i][j] = icnt[i + 1][j];
if(s[i][j] == 'I') icnt[i][j]++;
}
}
for(int i = 0; i < H; i++){
if(s[i][W - 1] == 'O') ocnt[i][W - 1]++;
}
for(int j = W - 2; j >= 0; j--){
for(int i = 0; i < H; i++){
ocnt[i][j] = ocnt[i][j + 1];
if(s[i][j] == 'O') ocnt[i][j]++;
}
}
long long int sum = 0;
for(int i = 0; i < H; i++){
for(int j = 0; j < W; j++){
if(s[i][j] == 'J') sum += ocnt[i][j] * icnt[i][j];
}
}
cout << sum;
}Compilation message (stderr)
joi2019_ho_t1.cpp: In function 'int main()':
joi2019_ho_t1.cpp:14:98: error: no matching function for call to 'std::vector<std::vector<long long int> >::vector(int&, std::vector<int>)'
14 | vector<vector<long long int>> icnt(H, vector<long long int>(W, 0)), ocnt(H, vector<int>(W, 0));
| ^
In file included from /usr/include/c++/13/vector:66,
from /usr/include/c++/13/functional:64,
from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:53,
from joi2019_ho_t1.cpp:1:
/usr/include/c++/13/bits/stl_vector.h:707:9: note: candidate: 'template<class _InputIterator, class> constexpr std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with <template-parameter-2-2> = _InputIterator; _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >]'
707 | vector(_InputIterator __first, _InputIterator __last,
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:707:9: note: template argument deduction/substitution failed:
joi2019_ho_t1.cpp:14:98: note: deduced conflicting types for parameter '_InputIterator' ('int' and 'std::vector<int>')
14 | vector<vector<long long int>> icnt(H, vector<long long int>(W, 0)), ocnt(H, vector<int>(W, 0));
| ^
/usr/include/c++/13/bits/stl_vector.h:678:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(std::initializer_list<_Tp>, const allocator_type&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; allocator_type = std::allocator<std::vector<long long int> >]'
678 | vector(initializer_list<value_type> __l,
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:678:43: note: no known conversion for argument 1 from 'int' to 'std::initializer_list<std::vector<long long int> >'
678 | vector(initializer_list<value_type> __l,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/13/bits/stl_vector.h:659:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, std::__type_identity_t<_Alloc>&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; std::__type_identity_t<_Alloc> = std::allocator<std::vector<long long int> >]'
659 | vector(vector&& __rv, const __type_identity_t<allocator_type>& __m)
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:659:23: note: no known conversion for argument 1 from 'int' to 'std::vector<std::vector<long long int> >&&'
659 | vector(vector&& __rv, const __type_identity_t<allocator_type>& __m)
| ~~~~~~~~~^~~~
/usr/include/c++/13/bits/stl_vector.h:640:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&, std::false_type) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; allocator_type = std::allocator<std::vector<long long int> >; std::false_type = std::integral_constant<bool, false>]'
640 | vector(vector&& __rv, const allocator_type& __m, false_type)
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:640:7: note: candidate expects 3 arguments, 2 provided
/usr/include/c++/13/bits/stl_vector.h:635:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&, const allocator_type&, std::true_type) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; allocator_type = std::allocator<std::vector<long long int> >; std::true_type = std::integral_constant<bool, true>]'
635 | vector(vector&& __rv, const allocator_type& __m, true_type) noexcept
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:635:7: note: candidate expects 3 arguments, 2 provided
/usr/include/c++/13/bits/stl_vector.h:624:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&, std::__type_identity_t<_Alloc>&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; std::__type_identity_t<_Alloc> = std::allocator<std::vector<long long int> >]'
624 | vector(const vector& __x, const __type_identity_t<allocator_type>& __a)
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:624:28: note: no known conversion for argument 1 from 'int' to 'const std::vector<std::vector<long long int> >&'
624 | vector(const vector& __x, const __type_identity_t<allocator_type>& __a)
| ~~~~~~~~~~~~~~^~~
/usr/include/c++/13/bits/stl_vector.h:620:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>&&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >]'
620 | vector(vector&&) noexcept = default;
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:620:7: note: candidate expects 1 argument, 2 provided
/usr/include/c++/13/bits/stl_vector.h:601:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >]'
601 | vector(const vector& __x)
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:601:7: note: candidate expects 1 argument, 2 provided
/usr/include/c++/13/bits/stl_vector.h:569:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(size_type, const value_type&, const allocator_type&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; size_type = long unsigned int; value_type = std::vector<long long int>; allocator_type = std::allocator<std::vector<long long int> >]'
569 | vector(size_type __n, const value_type& __value,
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:569:47: note: no known conversion for argument 2 from 'std::vector<int>' to 'const std::vector<std::vector<long long int> >::value_type&' {aka 'const std::vector<long long int>&'}
569 | vector(size_type __n, const value_type& __value,
| ~~~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/c++/13/bits/stl_vector.h:556:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(size_type, const allocator_type&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; size_type = long unsigned int; allocator_type = std::allocator<std::vector<long long int> >]'
556 | vector(size_type __n, const allocator_type& __a = allocator_type())
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:556:51: note: no known conversion for argument 2 from 'std::vector<int>' to 'const std::vector<std::vector<long long int> >::allocator_type&' {aka 'const std::allocator<std::vector<long long int> >&'}
556 | vector(size_type __n, const allocator_type& __a = allocator_type())
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_vector.h:542:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector(const allocator_type&) [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >; allocator_type = std::allocator<std::vector<long long int> >]'
542 | vector(const allocator_type& __a) _GLIBCXX_NOEXCEPT
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:542:7: note: candidate expects 1 argument, 2 provided
/usr/include/c++/13/bits/stl_vector.h:531:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::vector() [with _Tp = std::vector<long long int>; _Alloc = std::allocator<std::vector<long long int> >]'
531 | vector() = default;
| ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:531:7: note: candidate expects 0 arguments, 2 provided