湊數字遊戲

2021-06-22 00:12:06 字數 994 閱讀 1842

problem description

金牌大圖神的演算法能力最近又有不少提高~

為了杭電acm集訓隊的可持續性發展,現在他幫忙出了一道題目來訓練新隊員——

給出4種數字583,1643,3233,5989,依次分別有n,m,k,g個,請找出用這些數字能湊成的和最接近l的數,如果有2個同樣接近的,請輸出較大的那個。

input

輸入資料第一行是資料的組數t(1 <= t <= 70);

每組資料的第一行是4個正整數n,m,k,g(n,m,k,g<= 100);

每組資料的第二行是1個正整數l(l<=1200000);

以上資料的含義詳見題目描述。

output

對於每組資料,輸出乙個最接近l的數字,每組資料輸出一行。

sample input

21 2 3 4

3286

1 2 2 2

3870

sample output

3286

我的理解:拿到這個題目的第一反應是裝箱問題。於是就想用01揹包的思想解決問題。可惜超時了。

後來看到給我們的n,m,k,g都很小,所以列舉了所有的可能情況。ac

#include #include#include#includeusing namespace std;

#define maxn 1200009

bool vis[maxn];

int dp[maxn];

int main()

; scanf("%d",&t);

while(t--)

ans1=ret;

l=0,r=num;

while(l<=r)

ans2=ret;

if(ans1-l<=l-ans2)ans=ans1;

else ans=ans2;

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

}return 0;

}

牛牛湊數字

題目 牛牛今天家裡要來客人,所以牛牛今天特意做了他最拿手的兩種蛋糕,但是他是乙個有潔癖的人,所以他在分蛋糕時,有如下幾個原則 1.他不希望乙個盤子裡出現兩種蛋糕 2.他希望每個盤子中都有蛋糕 3.他想讓裝有最少蛋糕數量的盤子中裝有的蛋糕數量盡可能多 示例1複製 5,2,3複製 1只有一種方法把蛋糕分...

走進遞迴 湊數字題解

題目描述 有n個數字,a 1 a 2 a 3 a n 以及乙個數字m。問n個數字中取出一些數字,這些數字的和能否等於m。輸入多組測試資料,讀入到檔案尾結束。第一行輸入n,m。1 n 20,1 m 100 第二行輸入n個數字a 1 a 2 a 3 a n 1 a i 100 輸出如果可以,輸出yes,...

nowcoder 2020 牛牛的湊數遊戲

點此看題 設現在能表示的區間是 1,r 1,r 1,r 如果新加入了乙個數b bb,那麼新產生的區間是 b,r b b,r b b,r b 如果r 1 br 1r 1 b就可以直接不算了,因為後面的數不會下降,而空出來的r 1 r 1r 1是永遠無法填補的,否則我們把r rr擴大b bb。現在想必你...