中石油oj 2654 序列合併

2021-08-25 02:52:38 字數 876 閱讀 6479

參照別人的思路自己寫的**。(**量很大也不夠優化。)

#include

#include

using namespace std;

const int inf=1e5+10;

int arr1[inf],arr2[inf],ans[inf];

int n;                    //使用結構體。 

struct node

;node temp[inf]; 

void bigstack(int i)    //小根堆。i是第i個。 

else if(temp[i*2].a<=temp[i*2+1].a&&temp[i].a>=temp[i*2].a)

else                    //分布,先是從兩個進行考慮,之後在加條件罷了。 

break;            } }

int main()

for(int i=2;i<=n;i++)   

bigstack(i);  ///呼叫函式。

//之後。

int flag[inf];    //flag[i]代表的是第i個的指向。 

for(int i=1;i<=n;i++)

flag[i]=1;    //指向的是第乙個。                             

//因為是任意的乙個是不好進行判定的,所以只能是結構體,結束的時候在看一下。 

for(int i=1;i<=n;i++)    //但是也是要進行記錄的。看來要是結構體。 

cout

cout<<" "

return 0;    

upc 2654序列合併

序列合併 時間限制 1 sec 記憶體限制 64 mb 題目描述 有兩個長度都是n的序列a和b,在a和b中各取乙個數相加可以得到n 2個和,求這n 2個和中最小的n個。輸入 第一行乙個正整數n 第二行n個整數ai,滿足ai ai 1且ai 10 9 第三行n個整數bi,滿足bi bi 1且bi 10...

P1631 序列合併

做法 將 a 和 b 都從小到大排一遍序。然後組成這樣乙個矩陣 a1 b1 a1 b2 a1 b3 a1 bn a2 b1 a2 b2 a2 b3 a2 bn a3 b1 an b1 an b2 an b3 an bn 正確性 我們先把每行的頭扔進堆裡,每行的頭是每行中的最小值,所以這樣我們能在堆裡...

洛谷1631 序列合併

題目描述 有兩個長度都是n的序列a和b,在a和b中各取乙個數相加可以得到n 2個和,求這n 2個和中最小的n個。輸入輸出格式 輸入格式 第一行乙個正整數n 第二行n個整數ai,滿足ai ai 1且ai 10 9 第三行n個整數bi,滿足bi bi 1且bi 10 9.資料規模 對於50 的資料中,滿...