郵票分你一半

2021-07-25 22:51:51 字數 741 閱讀 3058

時間限制:

1000 ms  |  記憶體限制:

65535 kb

難度: 3

描述 小珂最近收集了些郵票,他想把其中的一些給他的好朋友小明。每張郵票上都有分值,他們想把這些郵票分成兩份,並且使這兩份郵票的分值和相差最小(就是小珂得到的郵票分值和與小明的差值最小),現在每張郵票的分值已經知道了,他們已經分好了,你知道最後他們得到的郵票分值和相差多少嗎?

輸入第一行只有乙個整數m(m<=1000),表示測試資料組數。

接下來有乙個整數n(n<=1000),表示郵票的張數。

然後有n個整數vi(vi<=100),表示第i張郵票的分值。

輸出輸出差值,每組輸出佔一行。

樣例輸入

2

52 6 5 8 9

32 1 5

樣例輸出

0

2

用01揹包的思想,可以把他們分為容量為sum/2的揹包,盡可能的裝滿,這就會減小它們之間的差距

#include#include#include#includeusing namespace std;

int dp[10100];

int a[1010];

int main()

}int sum=fabs(s-dp[s/2]-dp[s/2]);

printf("%d\n",sum);

}}

郵票分你一半

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 小珂最近收集了些郵票,他想把其中的一些給他的好朋友小明。每張郵票上都有分值,他們想把這些郵票分成兩份,並且使這兩份郵票的分值和相差最小 就是小珂得到的郵票分值和與小明的差值最小 現在每張郵票的分值已經知道了,他們已經分好了,你知...

郵票分你一半

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 小珂最近收集了些郵票,他想把其中的一些給他的好朋友小明。每張郵票上都有分值,他們想把這些郵票分成兩份,並且使這兩份郵票的分值和相差最小 就是小珂得到的郵票分值和與小明的差值最小 現在每張郵票的分值已經知道了,他們已經分好了,你知...

郵票分你一半

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 小珂最近收集了些郵票,他想把其中的一些給他的好朋友小明。每張郵票上都有分值,他們想把這些郵票分成兩份,並且使這兩份郵票的分值和相差最小 就是小珂得到的郵票分值和與小明的差值最小 現在每張郵票的分值已經知道了,他們已經分好了,你知...