pat a1032(静态链表)

    技术2024-11-01  63

    题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805460652113920 题目思路:在每个静态链表放置一个判断函数flag,在遍历一时将flag均置为true,查看第二个链表,当读到第一个flag时输出‘; 代码:

    # include<stdio.h> # include<string.h> struct node{ char data; int next; bool flag; node(){ next=-1; flag=false; } }no[100001]; int main(){ int s1,s2,n,i,j; scanf("%d %d %d",&s1,&s2,&n); for(i=0;i<n;i++){ int id; scanf("%d ",&id); scanf("%c %d",&no[id].data,&no[id].next); } for(i=s1;i!=-1;i=no[i].next){ no[i].flag=true; } for(i=s2;i!=-1;i=no[i].next){ if(no[i].flag==true) break; } if(i!=-1) printf("%05d",i); else printf("-1"); return 0; }
    Processed: 0.008, SQL: 9