제출 #1323548

#제출 시각아이디문제언어결과실행 시간메모리
1323548MuhammadSaramK번째 경로 (IZhO11_kthpath)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>

using namespace std;

#define int long long

const int M = 60;

int ncr[M][M];
vector<pair<int,int>> se[M][2];

signed main()
{
	for (int i=0;i<M;i++)
	{
		ncr[i][0]=1;
		for (int j=1;j<=i;j++)
			ncr[i][j]=ncr[i-1][j]+ncr[i-1][j-1];
	}
	int n,m,k;
	cin>>n>>m;
	string a[n];
	for (int i=0;i<n;i++)
		cin>>a[i];
	cin>>k;
	int val=0, id=0;
	se[a[0][0]-'a'][0].insert({1,1});
	string ans;
	for (int ct=0;ct<n+m-1;ct++)
	{
		for (int j=0;j<26;j++)
		{
			int su=0;
			for (auto [x,y]:se[j][id]) su+=ncr[n+m-x-y][n-x];
			if (val+su>=k)
			{
				ans+=char('a'+j);
				for (int c=0;c<M;c++) se[c][1-id].clear();
				for (auto [x,y]:se[j][id])
				{
					if (x<n) se[a[x][y-1]-'a'][1-id].push_back({x+1,y});
					if (y<m) se[a[x-1][y]-'a'][1-id].push_back({x,y+1});
				}
				id=1-id;
				break;
			}
			else
				val+=su;
		}
	}
	cout<<ans<<endl;
}

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

kthpath.cpp: In function 'int main()':
kthpath.cpp:27:34: error: no matching function for call to 'std::vector<std::pair<long long int, long long int> >::insert(<brace-enclosed initializer list>)'
   27 |         se[a[0][0]-'a'][0].insert({1,1});
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
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 kthpath.cpp:1:
/usr/include/c++/13/bits/stl_vector.h:1482:9: note: candidate: 'template<class _InputIterator, class> constexpr std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(const_iterator, _InputIterator, _InputIterator) [with <template-parameter-2-2> = _InputIterator; _Tp = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >]'
 1482 |         insert(const_iterator __position, _InputIterator __first,
      |         ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:1482:9: note:   template argument deduction/substitution failed:
kthpath.cpp:27:34: note:   candidate expects 3 arguments, 1 provided
   27 |         se[a[0][0]-'a'][0].insert({1,1});
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In file included from /usr/include/c++/13/vector:72:
/usr/include/c++/13/bits/vector.tcc:133:5: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(const_iterator, const value_type&) [with _Tp = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; iterator = std::vector<std::pair<long long int, long long int> >::iterator; const_iterator = std::vector<std::pair<long long int, long long int> >::const_iterator; value_type = std::pair<long long int, long long int>]'
  133 |     vector<_Tp, _Alloc>::
      |     ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/vector.tcc:133:5: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/13/bits/stl_vector.h:1393:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(const_iterator, value_type&&) [with _Tp = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; iterator = std::vector<std::pair<long long int, long long int> >::iterator; const_iterator = std::vector<std::pair<long long int, long long int> >::const_iterator; value_type = std::pair<long long int, long long int>]'
 1393 |       insert(const_iterator __position, value_type&& __x)
      |       ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:1393:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/13/bits/stl_vector.h:1411:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(const_iterator, std::initializer_list<_Tp>) [with _Tp = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; iterator = std::vector<std::pair<long long int, long long int> >::iterator; const_iterator = std::vector<std::pair<long long int, long long int> >::const_iterator]'
 1411 |       insert(const_iterator __position, initializer_list<value_type> __l)
      |       ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:1411:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/13/bits/stl_vector.h:1437:7: note: candidate: 'constexpr std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(const_iterator, size_type, const value_type&) [with _Tp = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; iterator = std::vector<std::pair<long long int, long long int> >::iterator; const_iterator = std::vector<std::pair<long long int, long long int> >::const_iterator; size_type = long unsigned int; value_type = std::pair<long long int, long long int>]'
 1437 |       insert(const_iterator __position, size_type __n, const value_type& __x)
      |       ^~~~~~
/usr/include/c++/13/bits/stl_vector.h:1437:7: note:   candidate expects 3 arguments, 1 provided