比赛 2024暑假C班集训A 评测结果 AAAAAAAAAA
题目名称 轮子的旋转 最终得分 100
用户昵称 wdsjl 运行时间 0.054 s
代码语言 C++ 内存使用 3.59 MiB
提交时间 2024-07-10 10:32:59
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;

const int N = 1010;

struct node{
    int s_i;
    int d_i;
    int c_i;
}belt[N];

deque <int> q;

int a[N],n,used[N];

int main(){
    freopen("rotation.in","r",stdin);
    freopen("rotation.out","w",stdout);
    scanf("%d",&n);
    int j=0;
    for(int i=1;i<n;i++){
        scanf("%d%d%d",&belt[i].s_i,&belt[i].d_i,&belt[i].c_i);
    } 
    a[1]=0;
    q.push_back(1);
    while(q.size()){
        for(int i=1;i<n;i++){
            if(used[i]==0&&belt[i].s_i==q.front()){
                a[belt[i].d_i]=(a[belt[i].s_i]+belt[i].c_i)%2;
                q.push_back(belt[i].d_i);
                used[i]++;
            }
        } 
        q.pop_front();
    }  
    printf("%d",a[n]);
}