3555 Problem B 序列合併

2021-09-13 21:26:36 字數 742 閱讀 5310

時間限制: 1 sec  記憶體限制: 128 mb

提交: 315  解決: 97

[提交][狀態][討論版][命題人:外部匯入]

有兩個長度都為n的序列a和b,在a和b中各取乙個數相加可以得到n2個和,求這n2個和中最小的n個。
第一行乙個正整數n(1 <= n <= 100000)。
第二行n個整數ai,滿足ai <= ai+1且ai <= 109
第三行n個整數bi,滿足bi <= bi+1且bi <= 109
輸出僅有一行,包含n個整數,從小到大輸出這n個最小的和,相鄰數字之間用空格隔開。
3

2 6 6

1 4 8

3 6 7
建議用最小堆實現。

#include #include #include using namespace std;

const int maxn = 100005;

int a[maxn], b[maxn], n;

int main()

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

else break;

}} for (int i = n - 1; i >= 0; i--)

cout << a[0];

for (int i = 1; i cout << endl;

} return 0;

}

3555 Problem B 序列合併

時間限制 1 sec 記憶體限制 128 mb 提交 88 解決 33 有兩個長度都為n的序列a和b,在a和b中各取乙個數相加可以得到n2個和,求這n2個和中最小的n個。第一行乙個正整數n 1 n 100000 第二行n個整數ai,滿足ai ai 1且ai 109 第三行n個整數bi,滿足bi bi...

Problem B 輸出連續的整數序列 之二

實驗5 problem b 輸出連續的整數序列 之二 description 輸出若干個連續的整數序列。input 輸入有多行。第一行是n 0,表示後面有n行輸入。之後每行輸入包含2個資料p和q,兩者之間用空格隔開,且均在int型別的表示範圍內。output 輸出n個連續的整數序列,序列兩兩之間用乙...

12 1 3 2 組合序列表示式

12.1.3.2 組合序列表示式 在 c 中,yield return 關鍵字只能返回乙個元素,因此,如果我們要在 c 中,使用迭代器實現的方法中,產生整個序列,那麼,就必須使用 foreach 迴圈,遍歷序列中所有元素,逐個產生元素。這也能執行,但效率低下,特別是,如果用這種方式處理幾個巢狀的序列...