UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#214584#2376. 树与异或Invisible_HCompile Error//C++4.1kb2024-11-20 19:13:402024-11-20 23:01:33

answer

#include <bits/stdc++.h>
using namespace std;
const long long MX=1000100,INF=0x3f3f3f3f,MO=1e9+7;
vector<long long>vec[MX];
long long f[MX][3],fath[MX];
long long n;bool vis[MX],fg;
void dfs(long long now,long long fa){
    if(vis[now])  return ;
    if(fg)  fath[now]=fa;
    f[now][1]=f[now][0];
    for(auto to:vec[now]){
        if(to==fa)  continue;
        // printf("now=%lld to=%lld\n",now,to);
        dfs(to,now);
        f[now][1]^=f[to][0];
        f[now][2]^=f[to][1];
    }
    // printf("now=%lld  %lld %lld %lld\n",now,f[now][0],f[now][1],f[now][2]);
}
signed main(){long long q;
    scanf("%lld%lld",&n,&q);
    for(long long i=1;i<=n;i++)  scanf("%lld",&f[i][0]);
    for(long long i=1;i<n;i++){
        long long x,y;scanf("%lld%lld",&x,&y);
        vec[x].push_back(y),vec[y].push_back(x);
    }
    fg=1;dfs(1,0);memset(vis,1,sizeof(vis));fg=0;
    // printf("\n\nnow begin\n");
    long long ans=0;
    for(long long i=1;i<=q;i++){
        long long x,v;scanf("%lld%lld",&x,&v);
        // f[fath[fath[x]]][2]^=f[fath[x]][1];
        // f[fath[x]][1]^=f[x][0];
        // f[fath[x]][2]^=f[x][0];
        f[x][0]=v;
        vis[x]=0;dfs(x,fath[x]);vis[x]=1;
        vis[fath[x]]=0;dfs(fath[x],fath[fath[x]]);vis[fath[x]]=1;
        vis[fath[fath[x]]]=0;dfs(fath[fath[x]],fath[fath[fath[x]]]);vis[fath[fath[x]]]=1;
        
        f[0][0]=f[0][1]=f[0][2]=0;
        long long sum=(f[x][2]^f[fath[x]][1])^f[fath[fath[x]]][0];
        ans+=(sum*((i*i)%MO))%MO;ans%=MO;
        // printf("%lld\n",sum);
        // f
    }
    cout<<(ans%MO+MO)%MO;
    return 0;
}
/*
        CCCCCCCCCCCCC               AAA               IIIIIIIIII      CCCCCCCCCCCCC               AAA               IIIIIIIIII               AAA               
     CCC::::::::::::C              A:::A              I::::::::I   CCC::::::::::::C              A:::A              I::::::::I              A:::A              
   CC:::::::::::::::C             A:::::A             I::::::::I CC:::::::::::::::C             A:::::A             I::::::::I             A:::::A             
  C:::::CCCCCCCC::::C            A:::::::A            II::::::IIC:::::CCCCCCCC::::C            A:::::::A            II::::::II            A:::::::A            
 C:::::C       CCCCCC           A:::::::::A             I::::I C:::::C       CCCCCC           A:::::::::A             I::::I             A:::::::::A           
C:::::C                        A:::::A:::::A            I::::IC:::::C                        A:::::A:::::A            I::::I            A:::::A:::::A          
C:::::C                       A:::::A A:::::A           I::::IC:::::C                       A:::::A A:::::A           I::::I           A:::::A A:::::A         
C:::::C                      A:::::A   A:::::A          I::::IC:::::C                      A:::::A   A:::::A          I::::I          A:::::A   A:::::A        
C:::::C                     A:::::A     A:::::A         I::::IC:::::C                     A:::::A     A:::::A         I::::I         A:::::A     A:::::A       
C:::::C                    A:::::AAAAAAAAA:::::A        I::::IC:::::C                    A:::::AAAAAAAAA:::::A        I::::I        A:::::AAAAAAAAA:::::A      
C:::::C                   A:::::::::::::::::::::A       I::::IC:::::C                   A:::::::::::::::::::::A       I::::I       A:::::::::::::::::::::A     
 C:::::C       CCCCCC    A:::::AAAAAAAAAAAAA:::::A      I::::I C:::::C       CCCCCC    A:::::AAAAAAAAAAAAA:::::A      I::::I      A:::::AAAAAAAAAAAAA:::::A    
  C:::::CCCCCCCC::::C   A:::::A             A:::::A   II::::::IIC:::::CCCCCCCC::::C   A:::::A             A:::::A   II::::::II   A:::::A             A:::::A   
   CC:::::::::::::::C  A:::::A               A:::::A  I::::::::I CC:::::::::::::::C  A:::::A               A:::::A  I::::::::I  A:::::A               A:::::A  
     CCC::::::::::::C A:::::A                 A:::::A I::::::::I   CCC::::::::::::C A:::::A                 A:::::A I::::::::I A:::::A                 A:::::A 
        CCCCCCCCCCCCCAAAAAAA                   AAAAAAAIIIIIIIIII      CCCCCCCCCCCCCAAAAAAA                   AAAAAAAIIIIIIIIIIAAAAAAA                   AAAAAAA
*/

详细

answer.code: In function 'void dfs(long long int, long long int)':
answer.code:11:14: error: 'to' does not name a type
     for(auto to:vec[now]){\x0d
              ^
answer.code:19:1: error: expected ';' before '}' token
 }\x0d
 ^
answer.code:19:1: error: expected primary-expression before '}' token
answer.code:19:1: error: expected ';' before '}' token
answer.code:19:1: error: expected primary-expression before '}' token
answer.code:19:1: error: expected ')' before '}' token
answer.code:19:1: error:...