Submission #850234

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
8502342023-09-16 07:47:33Tai_xiuPutovanje (COCI20_putovanje)C++14
110 / 110
134 ms24544 KiB
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=200001;
ll bit1[200001],bit2[200001];
unsigned int s[maxn],d_hld[maxn],cl[maxn],pos[maxn],id=0,head[maxn],pd[maxn],n,e_pre[maxn];
struct item
{
int v,t1,t2;
};
vector<item>g[maxn];
void dfs(int u)
{
cl[u]=1;
s[u]=1;
int smax=0,imax=0;
for (int i=0;i<g[u].size();i++){
int v=g[u][i].v;
if (cl[v]==0){
pd[v]=u;
dfs(v);
s[u]+=s[v];
if (smax<s[v]){
smax=s[v];
imax=i;
}
}
}
swap(g[u][0],g[u][imax]);
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

putovanje.cpp: In function 'void dfs(int)':
putovanje.cpp:17:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<item>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for (int i=0;i<g[u].size();i++){
      |                  ~^~~~~~~~~~~~
putovanje.cpp:23:21: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   23 |             if (smax<s[v]){
      |                 ~~~~^~~~~
putovanje.cpp: In function 'void hld(int)':
putovanje.cpp:36:18: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
   36 |         if (pd[v]==u){
      |             ~~~~~^~~
putovanje.cpp: In function 'void update1(int, long long int)':
putovanje.cpp:45:13: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   45 |     while (i<=n){
      |            ~^~~
putovanje.cpp: In function 'void update2(int, long long int)':
putovanje.cpp:52:13: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
   52 |     while (i<=n){
      |            ~^~~
putovanje.cpp: In function 'int main()':
putovanje.cpp:166:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
  166 |     for (int i=1;i<n;i++){
      |                  ~^~
putovanje.cpp:174:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
  174 |     for (int i=1;i<n;i++)
      |                  ~^~
putovanje.cpp:178:19: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
  178 |     for (int i=1;i<=n;i++){
      |                  ~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...