2017年团体程序设计天梯赛-总决赛 L2-2. 重排链表
2017-04-16 10:29
302 查看
输入的数据可能不是一张链表的,陈越教授风格
#include<bits/stdc++.h> using namespace std; struct node { int add; int d; int next; } p[123456],p1[123456]; int k,st,n,nt,m[123456],r[123456]; int main() { int a,d,t; cin>>st>>n; for(int i=0; i<n; i++) { cin>>a>>d>>t; p[a].add=a; p[a].d=d; p[a].next=t; } k=st; int j=1; while(k!=-1) { m[j]=k; j++; k=p[k].next; } int a1=j-1; int a2=1; for(int i=0; i<j-1; i++) { if(i%2==0) { r[i]=m[a1]; a1--; } else { r[i]=m[a2]; a2++; } } for(int i=0; i<j-1; i++) { p1[i].add=r[i]; p1[i].d=p[r[i]].d; if(i==j-2) { p1[i].next=-1; printf("%05d %d %d\n",p1[i].add,p1[i].d,p1[i].next); } else { p1[i].next=r[i+1]; printf("%05d %d %05d\n",p1[i].add,p1[i].d,p1[i].next); } } return 0; }
相关文章推荐
- 团体程序设计天梯赛L2-022 重排链表
- 团体程序设计天梯赛-练习集 -- L2-022. 重排链表
- 团体程序设计天梯赛L2-002 链表去重(模拟)
- 团体程序设计天梯赛-练习集 L2-002. 链表去重 解题报告
- 团体程序设计天梯赛-练习集L2-002. 链表去重
- 团体程序设计天梯赛-练习集 L2-002 链表去重 解题报告
- 团体程序设计天梯赛-练习集 L2-002. 链表去重
- 团体程序设计天梯赛L2-002 链表去重
- L2-002. 链表去重-PAT团体程序设计天梯赛GPLT
- 2017年团体程序设计天梯赛-总决赛 L1-6. 整除光棍
- 2017年团体程序设计天梯赛-大区赛 L2-020. 功夫传人
- 团体程序设计天梯赛-练习集L2-002. 链表去重
- 2017年团体程序设计天梯赛-总决赛 L3-1. 二叉搜索树的结构
- 团体程序设计天梯赛-练习集 L2-2. 链表去重 数组模拟链表
- 团体程序设计天梯赛L2-002 链表去重
- 团体程序设计天梯赛-练习集 L2-002. 链表去重
- 团体程序设计天梯赛-练习集-L2-007. 家庭房产(并查集)
- PAT 团体程序设计天梯赛-练习集 L2-006. 树的遍历【数据结构】
- 团体程序设计天梯赛-练习集 L2-005. 集合相似度
- 团体程序设计天梯赛L2-003 月饼