Submission #1007474

# Submission time Handle Problem Language Result Execution time Memory
1007474 2024-06-25T03:41:15 Z ezzzay Race (IOI11_race) C++14
Compilation error
0 ms 0 KB
 //#include "race.h"
#include<bits/stdc++.h>
using namespace std;
const int M=2e5+5;
int ans=INT_MAX;
vector<pair<int,int>>v[M];
#define pb push_back
#define ll long long
#define ff first
#define ss second
int sum[M],dst[M];
map<ll, ll> info[M];
int k;
void dfs(int a, int p, int h, int d){
    info[a][d]=h;
    dst[a]=h;
    sum[a]=d;
    info
    for(auto b:v[a]){
        if(b.ff==p)continue;
        dfs(b,a,h+1,d+b.ss);
    }
}
void fun(int a, int p){
    ll t=k+2*sum[a];
    for(auto b:v[a]){
        if(b.ff==p)continue;
        fun(b.ff,a);
        if(info[b.ff].size()>info[a].size())swap(info[b.ff],info[a]);
        for(auto i:info[b.ff]){
            if(info[a].find(t-i.ff)!=info[a].end()){
                ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
            }
        }
        for (auto i : info[b.ff]) {
			if (info[a].find(i.ff) == info[a].end()) {
				info[a].insert(i);
			} else {
				info[a][i.ff] = min(info[a][i.ff], i.ss);
			}
		}
    }
}
int best_path(int N, int K, int H[][2], int L[]){
    k=K;
    if(k==1)return 0;
	for(int i=0;i<N-1;i++){
		int a=H[i][0];
		int b=H[i][1];
		int c=L[i];
		v[a].pb({b,c});
		v[b].pb({a,c});
	}
	dfs(0,-1,0,0);
	fun(0,-1);
	return ans==INT_MAX ? -1 : ans;
}

Compilation message

race.cpp: In function 'void dfs(int, int, int, int)':
race.cpp:18:9: error: expected ';' before 'for'
   18 |     info
      |         ^
      |         ;
   19 |     for(auto b:v[a]){
      |     ~~~  
race.cpp:18:5: warning: statement has no effect [-Wunused-value]
   18 |     info
      |     ^~~~
race.cpp: In function 'void fun(int, int)':
race.cpp:32:58: error: no matching function for call to 'min(int&, std::map<long long int, long long int>::mapped_type)'
   32 |                 ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
      |                                                          ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from race.cpp:2:
/usr/include/c++/10/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++/10/bits/stl_algobase.h:230:5: note:   template argument deduction/substitution failed:
race.cpp:32:58: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'std::map<long long int, long long int>::mapped_type' {aka 'long long int'})
   32 |                 ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
      |                                                          ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from race.cpp:2:
/usr/include/c++/10/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++/10/bits/stl_algobase.h:278:5: note:   template argument deduction/substitution failed:
race.cpp:32:58: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'std::map<long long int, long long int>::mapped_type' {aka 'long long int'})
   32 |                 ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
      |                                                          ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from race.cpp:2:
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)'
 3468 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3468:5: note:   template argument deduction/substitution failed:
race.cpp:32:58: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   32 |                 ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
      |                                                          ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from race.cpp:2:
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)'
 3474 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3474:5: note:   template argument deduction/substitution failed:
race.cpp:32:58: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   32 |                 ans=min(ans,info[a][t-i.ff]+i.ss-2*dst[a]);
      |                                                          ^