時間限制: 1 sec
記憶體限制: 128 mb
提交: 230
解決: 45 [
提交][
狀態][
討論版]
瑞神要準備考研了,為了複習資料結構,瑞神在某寶上買了一本資料結構得考研輔導資料《考研資料結構---從入門到放棄》,從此瑞神開始了愉快的復(zhuang)習(bi)。
有一天,瑞神找了好多條鍊錶來輔助自己複習,但是他在複習的過程中一不小心把鍊錶掉在了地上,撿起來的時候鍊錶以及斷成了好多個結點,每個結點只保留了當前結點的位址、結點的值和下乙個結點的位址。瑞神看著這些結點渾身難受無法複習,為了讓瑞神繼續復(zhuang)習(bi)下去,請你幫瑞神把鍊錶復原。
第一行給出結點的個數n(1<=n<=100000)。
位址為5位數字,-1表示位址為null。
每一行輸出一條鍊錶,只輸出每個節點的值。
多條鍊錶按照首結點位址從小到大排序。
300323 155 -1
00322 87 00323
00233 1 -1
187 155
。。。 錯了6遍 我是真服我自己
宛如乙個智障
用乙個集合去存煉表頭的位址 ; 然後用位址為下標的,值為後乙個位址的陣列去輸出當前鍊錶;
注意一點就是如何讓s集合中儲存的只有煉表頭部分 ,就是這個地方沒有處理好 錯了6次
#include #include#include#includeusing namespace std;
const int maxn=100000+5;
int a[maxn];
int num[maxn];
int main()
s2.insert(r);//將尾放入
a[l]=r;
num[l]=v;
}// for(it=s.begin();it!=s.end();it++)
// cout<<*it<<" ";
// cout<
5656 55 6
6 6565 -1
556 22 656
222 545 -1
553 11 -1
300323 155 -1
00322 87 00323
00233 1 -1
NOIP 模擬賽 鐘 模擬 鍊錶
biubiu 這道題實際上就是優化模擬,就是找到最先死的讓他死掉,運用時間上的加速,題解上說,要用堆優化,也就是這個意思。對於鍊錶,單項鍊表和迴圈鍊錶都不常用,最常用的是雙向鍊錶,刪除和插入比較方便。所謂掛鏈就是把鍊錶中的值域換成一坨別的東東西.include inline void read in...
模擬鍊錶c
和鍊錶相似,只不過將鍊錶的next域用乙個陣列表示。陣列data用來存放具體數字,而另乙個陣列right用來存放當前序列中每乙個元素右邊的元素在陣列data中的位置的。for int i 1 i n i scanf d data i len n 初始化陣列right for int i 1 i n ...
模擬 多校賽 開學覺醒賽 G 骰子
題目描述 silechen有一顆骰子,他喜歡跟骰子玩遊戲,一開始他將骰子平放在地上,然後骰子按照silechen的指令在地上滾動,silechen想將知道骰子每次接觸地面的面 也就是骰子的下面 的值加起來是多少 注意,一開始接觸地面的值也要算進去 輸入 第一行是資料組數 1 t 10 接下來每組資料...