差點漏了這道題囧 紀念品分組

2022-03-21 06:55:49 字數 989 閱讀 6733

【題目描述】

元旦快到了,校學生會讓樂樂負責新年晚會的紀念品發放工作。為使得參加晚會的同學所獲得的紀念品價值相對均衡,他要把購來的紀念品根據**進行分組,但每組最多只能包括兩件紀念品,並且每組紀念品的**之和不能超過乙個給定的整數。為了保證在盡量短的時間內發完所有紀念品,樂樂希望分組的數目最少。

你的任務是寫乙個程式,找出所有分組方案中分組數最少的一種,輸出最少的分組數目。

【輸入格式】

包含n+2行:

第1行包括乙個整數w,為每組紀念品**之和的上限。

第2行為乙個整數n,表示購來的紀念品的總件數。

第3~n+2行每行包含乙個正整數pi (5 <= pi <= w),表示所對應紀念品的**。

【輸出格式】

僅一行,包含乙個整數,即最少的分組數目。

【樣例輸入】

100

9

90

20

20

30

50

60

70

80

90

【樣例輸出】

6【分析】

排序。left是最小的未分組的**,right是最大的未分組的**。

如果a[left] + a[right] <= max就將兩個物品裝到一起,然後指標移動。

否則將a[right]單分一組,然後指標移動。

#include #include #define maxn 30010

int a[maxn];

int n,l,r,ans,max;

int cmp(const void *a,const void *b)

int main() else

} printf("%d\n",ans);

return 0;

}

紀念品分組

問題描述 元旦快到了,校學生會讓樂樂負責新年晚會的紀念品發放工作。為使得參加晚會的同學所獲得的紀念品價值 相對均衡,他要把購來的紀念品根據 進行分組,但每組最多只能包括兩件紀念品,並且每組紀念品的 之和不能超過乙個給定的整數。為了保證在盡量短的時 間內發完所有紀念品,樂樂希望分組的數目最少。你的任務...

紀念品分組

time limit 1 sec memory limit 128 mb submit 4 solved 2 submit status web board 元旦快到了,校學生會讓樂樂負責新年晚會的紀念品發放工作。為使得參加晚會的同學所獲得 的紀念品價值相對均衡,他要把購來的紀念品根據 進行分組,但...

紀念品分組

題目描述 元旦快到了,校學生會讓樂樂負責新年晚會的紀念品發放工作。為使得參加晚會的同學所獲得 的紀念品價值相對均衡,他要把購來的紀念品根據 進行分組,但每組最多只能包括兩件紀念品,並且每組紀念品的 之和不能超過乙個給定的整數。為了保證在盡量短的時間內發完所有紀念品,樂樂希望分組的數目最少。你的任務是...