# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1247770 | chaeryeong | Ski 2 (JOI24_ski2) | C++20 | Compilation error | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
#define int long long
int dp[81][81][81][81];
vector <int> heights[81];
int n, k, h[41],c[41];
vector <int> dist;
int ans (int w,int x,int y, int z){
if(w==81){
if(x==0)return 0;
return 1e18;
}
int &ret=dp[w][x][y][z];
if(ret !=-1)return ret;
ret=1e18;
auto g = heights[w];
for(int i=1;i<=x;i++)g.push_back(dist.size()-1);
ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size());
if(y==0){
ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1));
return ret;
}
for(int i=0;i<g.size();i++){
ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i));
}
return ret;
}
signed main (){
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>h[i]>>c[i];
dist.push_back(c[i]);
}
dist.push_back(1e18);
sort(dist.begin(),dist.end());
dist.resize(unique(dist.begin(),dist.end())-dist.begin());
for(int i=1;i<=n;i++){
int x=lower_bound(dist.begin(),dist.end(),c[i])-dist.begin();
heights[h[i]].push_back(x);
}
for (int i=0;i<=40;i++){
sort(heights[i].begin(),heights[i].end());
}
memset(dp,-1,sizeof(dp));
cout<<ans(0,0,0,dist.size()-1)<<endl;
}
Compilation message (stderr)
Main.cpp: In function 'long long int ans(long long int, long long int, long long int, long long int)': Main.cpp:18:10: error: no matching function for call to 'min(long long int&, long long unsigned int)' 18 | ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size()); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)' 230 | min(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed: Main.cpp:18:10: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 18 | ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size()); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)' 278 | min(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed: Main.cpp:18:10: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 18 | ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size()); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3449:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3449 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3449:5: note: template argument deduction/substitution failed: Main.cpp:18:10: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 18 | ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size()); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3455:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3455 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3455:5: note: template argument deduction/substitution failed: Main.cpp:18:10: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 18 | ret = min(ret, ans(w+1,g.size(),y,z)+k*g.size()); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Main.cpp:20:8: error: no matching function for call to 'min(long long int&, long long unsigned int)' 20 | ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)' 230 | min(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed: Main.cpp:20:8: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 20 | ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)' 278 | min(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed: Main.cpp:20:8: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 20 | ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3449:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3449 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3449:5: note: template argument deduction/substitution failed: Main.cpp:20:8: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 20 | ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3455:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3455 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3455:5: note: template argument deduction/substitution failed: Main.cpp:20:8: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 20 | ret=min(ret,ans(w+1,g.size()-1,1,g[0])+k*(g.size()-1)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Main.cpp:24:8: error: no matching function for call to 'min(long long int&, long long unsigned int)' 24 | ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)' 230 | min(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed: Main.cpp:24:8: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 24 | ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from Main.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)' 278 | min(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed: Main.cpp:24:8: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int') 24 | ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3449:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3449 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3449:5: note: template argument deduction/substitution failed: Main.cpp:24:8: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 24 | ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/string:52, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/c++/11/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54, from Main.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3455:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3455 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3455:5: note: template argument deduction/substitution failed: Main.cpp:24:8: note: mismatched types 'std::initializer_list<_Tp>' and 'long long int' 24 | ret=min(ret,ans(w+1,g.size()-i-1,i+1,min(g[0],z))+dist[z]*max(0ll,i+1-y)+k*(g.size()-1-i)); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~