Submission #1307830

#TimeUsernameProblemLanguageResultExecution timeMemory
1307830exoworldgdWorld Map (IOI25_worldmap)C++20
Compilation error
0 ms0 KiB
#include "worldmap.h" #include <bits/stdc++.h> #define exoworldgd cin.tie(0)->sync_with_stdio(0),cout.tie(0) using namespace std; using ll=long long; vector<vector<int>>create_map(int n,int m,vector<int>a,vector<int>b){ vector<vector<int>>g(n),ans(3*n,vector<int>(3*n)),h(n); for(int i=0;i<m;i++)a[i]--,b[i]--,g[a[i]].push_back(b[i]),g[b[i]].push_back(a[i]); int vis[n]={},used[n]={},cur=n; vector<int>depth(n),tour,ra,rb; function<void(int)>dfs=[&](int x){ vis[x]=1,tour.push_back(x); for(int i:g[x]){ if(!vis[i])depth[i]=depth[x]+1,dfs(i),tour.push_back(x); else if(depth[x]<depth[i])ra.push_back(x),rb.push_back(i); } }; dfs(0); for(int i=0;i<m-n+1;i++)h[ra[i]].push_back(rb[i]); for(int i=0;i<2*n-1;i++){ if(!used[tour[i]]){ int pos=0; for(int j=0;j<3*n;j++){ int ya=cur-j,yb=cur+1-j,yc=cur+2-j; if(ya>=0&&ya<3*n)ans[j][ya]=tour[i]; if(yb>=0&&yb<3*n)pos<h[tour[i].size()]?(ans[j][yb]=h[tour[i]][pos],pos++):ans[j][yb]=tour[i]; if(yc>=0&&yc<3*n)ans[j][yc]=tour[i]; } used[tour[i]]=1,cur+=3; }else{ for(int j=0,ya;j<3*n;j++)ya=cur-j,ya>=0&&ya<3*n?ans[j][ya]=tour[i]:0; cur++; } } for(int i=0;i<ans.size();i++)for(int j=0;j<ans.size();j++)ans[i][j]++; return ans; }

Compilation message (stderr)

worldmap.cpp: In function 'std::vector<std::vector<int> > create_map(int, int, std::vector<int>, std::vector<int>)':
worldmap.cpp:26:48: error: request for member 'size' in 'tour.std::vector<int>::operator[](((std::vector<int>::size_type)i))', which is of non-class type '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'}
   26 |                 if(yb>=0&&yb<3*n)pos<h[tour[i].size()]?(ans[j][yb]=h[tour[i]][pos],pos++):ans[j][yb]=tour[i];
      |                                                ^~~~