題目鏈結
思路
用結構體 儲存 乙個結點的位址 值 和下乙個位址
然後從首位址開始 往下走 並且每個值的絕對值 都標記一下
並且 每次往下走的時候 都判斷一下 其值的絕對值 是否 已經被標記
如果被標記過 那麼 它就要加入到 重複的序列當中
如果 沒有被標記過 就要標記 然後加入到 未重複的序列
ac**
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define clr(a) memset(a, 0, sizeof(a))
#define pb push_back
using
namespace
std;
typedef
long
long ll;
typedef
long
double ld;
typedef
unsigned
long
long ull;
typedef pair pii;
typedef pair pll;
typedef pair psi;
typedef pair pss;
const
double pi = 3.14159265358979323846264338327;
const
double e = exp(1);
const
double eps = 1e-6;
const
int inf = 0x3f3f3f3f;
const
int maxn = 1e2 + 5;
const
int mod = 1e9 + 7;
struct node
temp;
map m;
map vis;
vector
v[2];
int ini, n;
void dfs(int add)
else
if (m[add].next != -1)
dfs(m[add].next);
}int main()
v[0].pb(m[ini]);
vis[abs(m[ini].value)] = 1;
ini = m[ini].next;
if (ini != -1)
dfs(ini);
if (v[0].size())
}if (v[1].size())
}}
天梯賽L2 002 鍊錶去重
problem description 給定乙個帶整數鍵值的鍊錶 l,你需要把其中絕對值重複的鍵值結點刪掉。即對每個鍵值 k,只有第乙個絕對值等於 k 的結點被保留。同時,所有被刪除的結點須被儲存在另乙個鍊錶上。例如給定 l 為 21 15 15 7 15,你需要輸出去重後的鍊錶 21 15 7,還...
天梯賽習題 L2 002 鍊錶去重
時間限制 300 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 給定乙個帶整數鍵值的單鏈表l,本題要求你編寫程式,刪除那些鍵值的絕對值有重複的結點。即對任意鍵值k,只有鍵值或其絕對值等於k的第乙個結點可以被保留。同時,所有被刪除的結點必須被儲存在...
L2 002 鍊錶去重
給定乙個帶整數鍵值的單鏈表l,本題要求你編寫程式,刪除那些鍵值的絕對值有重複的結點。即對任意鍵值k,只有鍵值或其絕對值等於k的第乙個結點可以被保留。同時,所有被刪除的結點必須被儲存在另外乙個鍊錶中。例如 另l為21 15 15 7 15,則你必須輸出去重後的鍊錶21 15 7 以及被刪除的鍊錶 15...