蒜頭君的倉庫中有 nn 塊狂暴石,每塊狂暴石有兩個屬性:憤怒和暴躁。攜帶這些狂暴石會獲得相應的屬性,具體來說:總的憤怒值為所有狂暴石憤怒值之積,總的暴躁值為所有狂暴石暴躁值之和。現在蒜頭君想知道,如何選取狂暴石(不能一塊都不選),可以使得總憤怒值和總暴躁值相差的最少。現在請你幫幫他,計算出這個相差最小的值。
輸入格式
第一行乙個整數 n\ (1\le n \le 10)n (1≤n≤10)。
接下來 nn 行,每行兩個空格分隔的整數,分表表示一塊狂暴石的憤怒值和暴躁值。
資料保證,所有憤怒值之積和所有暴躁值之和都在int範圍內。
輸出格式
乙個整數,表示總憤怒值和總暴躁值最小的差值。
輸出時每行末尾的多餘空格,不影響答案正確性
樣例輸入複製
41 7
2 63 8
4 9樣例輸出複製
1本題本來打算用貪心來做,可是沒想到好的貪心規則,就乾脆直接用暴力解法,因為n的範圍較小,n^3的複雜度還可以接受,所以可以直接ac,**如下:
#include
#include
#include
#include
#include
using
namespace std;
bool
cmp(pair<
int,
int> a,pair<
int,
int> b)
/*@author:hairu,wu
@from:ahut
*/int
main()
int min=
1e9;
for(
int i=
0;i(abs
(num2-num1)
abs(num2-num1);}
}}
cout
}
計蒜客t36352 魔法
肯定我要佔滿所有的葉子結點,否則以乙個葉子節點建樹的時候你選的所有點就都在一棵子樹裡,也就不符合要求。反過來,選擇了所有葉子節點,可以證明它是可行的,所以葉子節點構成的集合滿足要求而且最小。如果k 0 k 0k 0直接求出度為1 11的點的數目就好了 如果k 1 k 1k 1,列舉刪哪條邊,我用 x...
紅與黑 計蒜客 T1211
題目鏈結 典型的深搜題,基礎題。蒜廠有一間長方形的房子,地上鋪了紅色 黑色兩種顏色的正方形瓷磚。你站在其中一塊黑色的瓷磚上,只能向相鄰的黑色瓷磚移動。請寫乙個程式,計算你總共能夠到達多少塊黑色的瓷磚。輸入格式第一行是兩個整數 w和 h,分別表示 x 方向和 y 方向瓷磚的數量。w 和 h 都不超過 ...
計蒜客T1195 和數
蒜頭君給定乙個正整數序列,判斷其中有多少個數,等於數列中其他兩個數的和。比如,對於數列1 2 3 4,這個問題的答案就是 2,因為 3 2 1,4 1 3。輸入格式 共兩行,第一行是數列中數的個數 n 1 n 100 第二行是由 n 個不大於 10000 的正整數組成的數列,相鄰兩個整數之間用單個空...