給定乙個長度為 n 的陣列 a=[a1,a2,⋅⋅⋅an],陣列中有可能有重複出現的整數。
現在小明要按以下方法將其修改為沒有重複整數的陣列。
小明會依次修改 a2,a3,⋅⋅⋅,an。
當修改 ai 時,小明會檢查 ai 是否在 a1∼ai−1 **現過。
如果出現過,則小明會給 ai 加上 1;如果新的 ai 仍在之前出現過,小明會持續給 ai 加 1,直到 ai 沒有在 a1∼ai−1 **現過。
當 an 也經過上述修改之後,顯然 a 陣列中就沒有重複的整數了。
現在給定初始的 a 陣列,請你計算出最終的 a 陣列。
輸入格式
第一行包含乙個整數 n。
第二行包含 n 個整數 a1,a2,⋅⋅⋅,an。
輸出格式
輸出 n 個整數,依次是最終的 a1,a2,⋅⋅⋅,an。
資料範圍
1≤n≤105,
1≤ai≤106
輸入樣例:
52 1 1 3 4
輸出樣例:
疑難雜題 距離(LCA)
給出 n 個點的一棵樹,多次詢問兩點之間的最短距離。注意 邊是無向的。所有節點的編號是 1,2,n。輸入格式 第一行為兩個整數 n 和 m。n 表示點數,m 表示詢問次數 下來 n 1 行,每行三個整數 x,y,k,表示點 x 和點 y 之間存在一條邊長度為 k 再接下來 m 行,每行兩個整數 x,...
修改陣列 平衡樹 維護區間 經典題
給定乙個長度為 n 的陣列 a a1,a2,an 陣列中有可能有重複出現的整數。現在小明要按以下方法將其修改為沒有重複整數的陣列。小明會依次修改 a2,a3,an。當修改 ai 時,小明會檢查 ai 是否在 a1 ai 1 現過。如果出現過,則小明會給 ai 加上 1 如果新的 ai 仍在之前出現過...
acwing演算法學習 疑難雜題 剪格仔
1.首先判斷有沒有兩 聯通塊 2.然後搜尋 這裡不是搜尋一筆畫畫完的那種 3.dfs 4.列舉每乙個dfs的點的四個方向,都放入s當中 5.再進行一次dfs 6.注意判重,搜過的就不再搜了 搜尋方式 生成雜湊 include define x first define y second using ...