pat 1032. Sharing (25)
来源:互联网 发布:java 画流程图代码 编辑:程序博客网 时间:2024/04/28 06:15
建两条双向链表,然后从后向前比较
#include<stdio.h>#define SIZE 100000struct list{ int add; struct list *next, *forward; char key;};struct Node{ int add,next; char key;}node[SIZE];int main(){ freopen("1.in", "r", stdin); int n, starta, startb; scanf("%d%d%d", &starta, &startb, &n); int i; for (i = 0; i < n; i++) scanf("%d %c %d", &node[i].add, &node[i].key, &node[i].next); int next; struct list *ha,*ta; ha = new struct list; ha->next = NULL; ta = ha; next = starta; while (next != -1){ for (i = 0; i < n;i++) if (node[i].add == next){ struct list *nd = new struct list; nd->add = next; nd->key = node[i].key; nd->next = NULL; nd->forward = ta; if (ta == ha) ha->next = nd; ta->next = nd; ta = nd; next = node[i].next; } } struct list *hb, *tb; hb = new struct list; hb->next = NULL; tb = hb; next = startb; while (next != -1){ for (i = 0; i < n; i++) if (node[i].add == next){ struct list *nd = new struct list; nd->add = next; nd->key = node[i].key; nd->next = NULL; nd->forward = tb; if (tb == hb) hb->next = nd; tb->next = nd; tb = nd; next = node[i].next; } } struct list *pa, *pb; pa = ta; pb = tb; while (pa != ha&&pb != hb){ if (pa->add != pb->add) break; pa = pa->forward; pb = pb->forward; } if (pa->next) printf("%05d\n", pa->next->add); else printf("-1\n"); return 0;}
0 0
- 1032. Sharing (25)-PAT
- 【PAT】1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT:1032. Sharing (25)
- PAT 1032. Sharing (25)
- pat 1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT 1032. Sharing (25)
- PAT 1032. Sharing (25)
- 1032. Sharing (25) PAT
- PAT (Advanced) 1032. Sharing (25)
- PAT A 1032. Sharing (25)
- PAT甲 1032. Sharing (25)
- PAT(A) - 1032. Sharing (25)
- 【PAT甲级】1032. Sharing (25)
- Linux下面如何安装Django
- Machine Learning PCA
- [Hb-XVII] 计算机的抽象层次-简 使用寄存器 使用内存空间 程序执行过程 使用main函数规定 不定参数函数机制 C
- URAL 1885. Passenger Comfort(数学啊 )
- 会议印象
- pat 1032. Sharing (25)
- TCP Socket 简单编程 in java
- android 强制关闭软键盘
- 安装bochs,make时出现错误libpthread.so.0: error adding symbols: DSO missing from command line
- URAL 1889. Airport Announcements(数学啊 )
- 判断字符串里的字符出现的次数是唯一的(算法)
- Maximum Subarray -- leetcode
- prezi如何更换左下角LOGO?
- ZOJ - 3811 Untrusted Patrol bfs+并查集