美文网首页
PAT甲级A1052---链表处理

PAT甲级A1052---链表处理

作者: 1nvad3r | 来源:发表于2020-07-29 09:27 被阅读0次

1052 Linked List Sorting (25分)

1052
分析:

注意有效结点等于0的时候特判。

C++:
#include <cstdio>
#include <algorithm>

using namespace std;

const int maxn = 100010;
const int INF = 1 << 30;
struct Node {
    int add, next, data;
    bool flag;
} nodes[maxn];

bool cmp(Node a, Node b) {
    if (a.flag == false || b.flag == false) {
        return a.flag > b.flag;
    } else {
        return a.data < b.data;
    }
}

int main() {
    int n, begin;
    scanf("%d%d", &n, &begin);
    int data, add, next;
    for (int i = 0; i < n; i++) {
        scanf("%d%d%d", &add, &data, &next);
        nodes[add].add = add;
        nodes[add].data = data;
        nodes[add].next = next;
    }
    int count = 0;//有效结点
    while (begin != -1) {
        nodes[begin].flag = true;
        count++;
        begin = nodes[begin].next;
    }
    if (count == 0) {
        printf("0 -1\n");
        return 0;
    }
    sort(nodes, nodes + maxn, cmp);
    printf("%d %05d\n", count, nodes[0].add);
    for (int i = 0; i < count - 1; i++) {
        printf("%05d %d %05d\n", nodes[i].add, nodes[i].data, nodes[i + 1].add);
    }
    printf("%05d %d -1\n", nodes[count - 1].add, nodes[count - 1].data);
    return 0;
}

相关文章

  • PAT甲级A1052---链表处理

    1052 Linked List Sorting (25分) 分析: 注意有效结点等于0的时候特判。 C++:

  • PAT甲级A1097---链表处理

    1097 Deduplication on a Linked List (25分) 分析: 使用data[add]...

  • PAT A1001 A+B Format (20)

    PAT A1001 A+B Format 原题链接PAT甲级题目目录(简书)PAT甲级题目目录(CSDN)在CSD...

  • PAT 链表处理

    1.反转链表 注意点: 1.要考虑可能存在的无效结点的情况,即不是由题目给出的头结点引出的单链表上的结点,这些结点...

  • 字符串输入问题

    PAT 甲级 1100 People on Mars count their numbers with base ...

  • PAT甲级A1074---反转链表

    1074 Reversing Linked List (25分) 分析: 使用data[add]记录地址为add的...

  • PAT甲级题解 全部 JAVA版 持续更新

      临近过年,闲来无事。恰逢弟弟准备考PAT甲级,总是问我一些问题。又见网上PAT甲级多为c/c++版本的答案。罕...

  • PAT甲级 1043 Is It a Binary Search

    原题链接 PAT甲级 1043 Is It a Binary Search Tree (25 分) 题目大意 给定...

  • 2020-02-06

    PAT-甲级 做题笔记 目录 0000 做题 Tips 基本经验1003 Emergency (Dijkstra ...

  • Pat 甲级 1001

    太感人终于把1001做对了,一开始没有看清题目要求。产生各种各样的错误,最后又有编译错误。在Pat中Java的类名...

网友评论

      本文标题:PAT甲级A1052---链表处理

      本文链接:https://www.haomeiwen.com/subject/xvncrktx.html