Submission #1311882

#TimeUsernameProblemLanguageResultExecution timeMemory
1311882HasanV11010238Travelling Merchant (APIO17_merchant)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define INF 1000000000 #define INF2 1000000000005 int main(){ ll n, m, k, x, y, co; cin>>n>>m>>k; vector<vector<ll>> b(n + 1, vector<ll>(k + 1, -1)), s(n + 1, vector<ll>(k + 1, -1)); for (int i = 1; i <= n; i++){ for (int j = 1; j <= k; j++){ cin>>b[i][j]>>s[i][j]; } } vector<vector<ll>> di(n + 1, vector<ll>(n + 1, INF)), pr(n + 1, vector<ll>(n + 1, 0)); for (int i = 1; i <= m; i++){ cin>>x>>y>>co; di[x][y] = min(di[x][y], co); } for (int i = 1; i <= n; i++) di[i][i] = 0; for (int l = 1; l <= n; l++){ for (int i = 1; i <= n; i++){ for (int j = 1; j <= n; j++){ di[i][j] = min(di[i][j], di[i][l] + di[l][j]); } } } for (int i = 1; i <= n; i++){ for (int j = 1; j <= n; j++){ for (int l = 1; l <= k; l++){ if (b[i][l] != -1 && s[j][l] != -1) pr[i][j] = max(pr[i][j], s[j][l] - b[i][l]); } } } ll l = 1, r = 1000000000, best = 0; while (l <= r){ ll mid = (l + r) / 2; vector<vector<ll>> dp(n + 1, vector<ll>(n + 1, INF2)); for (int i = 1; i <= n; i++){ dp[i][i] = 0; for (int j = 1; j <= n; j++){ dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2); } } for (int z = 1; z <= n; z++){ for (int i = 1; i <= n; i++){ for (int j = 1; j <= n; j++){ dp[i][j] = min(dp[i][j], dp[i][z] + dp[z][j]); } } } bool can = 0; for (int i = 1; i <= n; i++){ for (int j = 1; j <= n; j++){ if (i == j) continue; if (dp[i][j] + dp[j][i] <= 0) can = 1; } } if (can == 1){ best = mid; l = mid + 1; } else{ r = mid - 1; } } cout<<best; }

Compilation message (stderr)

merchant.cpp: In function 'int main()':
merchant.cpp:42:31: error: no matching function for call to 'min(long long int, long int)'
   42 |                 dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2);
      |                            ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51,
                 from merchant.cpp:1:
/usr/include/c++/13/bits/stl_algobase.h:233:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
  233 |     min(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:233:5: note:   template argument deduction/substitution failed:
merchant.cpp:42:31: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long int')
   42 |                 dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2);
      |                            ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
  281 |     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note:   template argument deduction/substitution failed:
merchant.cpp:42:31: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long int')
   42 |                 dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2);
      |                            ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61:
/usr/include/c++/13/bits/stl_algo.h:5775:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(initializer_list<_Tp>)'
 5775 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5775:5: note:   template argument deduction/substitution failed:
merchant.cpp:42:31: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   42 |                 dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2);
      |                            ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(initializer_list<_Tp>, _Compare)'
 5785 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note:   template argument deduction/substitution failed:
merchant.cpp:42:31: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   42 |                 dp[i][j] = min(mid * di[i][j] - pr[i][j], INF2);
      |                            ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~