C C 程式設計題刷題 分組

2021-10-09 07:11:49 字數 1103 閱讀 2123

【題目描述】2023年一共有n名員工參加入職培訓,第i名員工擁有乙個戰力值x[i]。

在入職培訓中有乙個小活動需要把所有員工分為a、b兩組進行比拼對決。

為了讓活動更有趣味性,小q希望兩組的人數盡量均分(即兩組人數之差不超過1),並且要讓兩組盡量勢均力敵(a組的戰力值之和與b組的戰力值之和的差值盡量小)。

小q把這個問題交給你了,希望你幫他完成這個分組問題。

輸入描述

輸入的第一行包含乙個正整數t(1<=t<=10),表示測試用例數。

對於每一組測試用例,輸入的一行包括乙個正整數n(2<=n<=100),表示員工的數量。

接下來的一行,包含n個正整數x[i](1<=x[i]<=105)

保證所有員工的戰力值之和小於等於105。

輸出描述

輸出兩個整數, 從小到大依次輸出兩組的戰力值之和。

示例1

輸入

2

4

5 9 4 7

8

9 13 18 10 12 4 18 3

輸出

12 13

43 44

#include#include#include#includeusing namespace std;

void solution(vector&nums)

} int t = 0;

/*從cnt行開始找到最大的揹包容量j*/

for (int j = cap; j >= 0; --j)

} cout << min(t, sum - t) << " " << max(t, sum - t) << endl;

}int main()

solution(nums);

} system("pause");

return 0;

}

參考解法:

C C 程式設計題刷題 電話號碼

題目描述 企鵝王國是乙個奇特的國家,他們的 號碼包含11位數字,並且第乙個數字一定是8。比如88888888888就是企鵝王國的 號碼,但是13888888888和000就不是。現在給出乙個長度為n的字串s,這個字串只包含數字。每一次操作,你可以從這個字串中刪除任意乙個字元。對於給定的字串,需要你判...

刷題56 卡牌分組

給定一副牌,每張牌上都寫著乙個整數。每組都有 x 張牌。組內所有的牌上都寫著相同的整數。僅當你可選的 x 2 時返回 true。示例 1 輸入 1,2,3,4,4,3,2,1 輸出 true 解釋 可行的分組是 1,1 2,2 3,3 4,4 示例 2 輸入 1,1,1,2,2,2,3,3 輸出 f...

C C 程式設計題刷題 最小非零元素

題目描述 q哥給了小q乙個長度為n正整數序列ai。q哥要求小q重複以下操作步驟k輪 1 發現最小的非零元素x。2 列印x。3 將序列中所有非零元素減x。小q把這個艱鉅的任務交給了你,希望你能幫幫他。輸入描述 輸入包括兩行。第一行包括兩個正整數n和k 1 n,k 105 第二行包括n個正整數ai 1 ...