题目:题目详情 - L2-002 链表去重 (25 分) (pintia.cn)
大意
给定一个带整数键值的链表 L,你需要把其中绝对值重复的键值结点删掉。即对每个键值 K,只有第一个绝对值等于 K 的结点被保留。同时,所有被删除的结点须被保存在另一个链表上。例如给定 L 为 21→-15→-15→-7→15,你需要输出去重后的链表 21→-15→-7,还有被删除的链表 -15→15。
思路
首先要定义一个数据结构,然后还需要用到绝对值abs,容器
步骤一:
struct name
{
string id;
int e;
string ne;
};
map<string,name>ma;
map<int,int>se;
完整代码
#include<bits/stdc++.h>
using namespace std;
struct name
{
string id;
int e;
string ne;
};
map<string,name>ma;
map<int,int>se;
int main()
{
string h;
cin>>h;
int n;
cin>>n;
for(int i=1;i<=n;i+&