zoukankan      html  css  js  c++  java
  • 数据结构 | 链表:1097 删除重复元素

    代码提交之后一直说段错误。我以为是数组开的不够大,但是随着数组一点一点开大,还是有一个case没有AC。最终我发现:是有个边界条件没有考虑到

    void printList(const vector<Node>& a){
        if(!a.size()) return;
        FF(i,a.size()-1){
            printf("%05d %d %05d
    ",a[i].i,a[i].d,a[i+1].i);
        }
        printf("%05d %d %d
    ",a[i].i,a[i].d,-1);
    }

    错误原因:没有加上加粗的那行代码。

    AC代码:

    #include <stdio.h>
    #include <memory.h>
    #include <math.h>
    #include <string>
    #include <vector>
    #include <set>
    #include <stack>
    #include <queue>
    #include <algorithm>
    #include <map>
    
    
    #define I scanf
    #define OL puts
    #define O printf
    #define F(a,b,c) for(a=b;a<c;a++)
    #define FF(a,b) for(a=0;a<b;a++)
    #define FG(a,b) for(a=b-1;a>=0;a--)
    #define LEN 1000000
    #define MAX 0x06FFFFFF
    #define V vector<int>
    
    using namespace std;
    
    typedef struct Node{
        int d,next,i;
    }Node;
    Node nd[LEN];
    set<int> Has;
    
    void printList(const vector<Node>& a){
        if(!a.size()) return;
        FF(i,a.size()-1){
            printf("%05d %d %05d
    ",a[i].i,a[i].d,a[i+1].i);
        }
        printf("%05d %d %d
    ",a[i].i,a[i].d,-1);
    }
    
    int main(){
    //    freopen("1097.txt","r",stdin);
        int f,n,add,num,next;
        int i,j;
        I("%d%d",&f,&n);
        FF(i,n){
            I("%d",&add);
            I("%d%d",&num,&next);
            nd[add].i=add;
            nd[add].d=num;
            nd[add].next=next;
        }
        vector<Node> a;
        vector<Node> b;
        i=f;
        while(i>=0){
            int t=abs(nd[i].d);
            if(Has.find(t)==Has.end()){
                a.push_back(nd[i]);
                Has.insert(t);
            }else b.push_back(nd[i]);
            i=nd[i].next;
    //        O("%d
    ",i);
        }
        printList(a);
        printList(b);
        return 0;
    }
  • 相关阅读:
    MySql: Year, Quarter, Month, Day, Hour statistics
    PHP7.27: Cookie and Session
    css:Media Queries: How to target desktop, tablet and mobile?
    PHP7.27: object
    php7.27: export excel from mysql
    机器学习基础---逻辑回归(假设函数与线性回归不同)
    机器学习作业---线性回归
    机器学习基础---多变量线性回归
    机器学习基础---线性回归
    机器学习基础---概述
  • 原文地址:https://www.cnblogs.com/TQCAI/p/8546007.html
Copyright © 2011-2022 走看看