題目描述:
hoho,終於從speakless手上贏走了所有的糖果,是gardon吃糖果時有個特殊的癖好,就是不喜歡將一樣的糖果放在一起吃,喜歡先吃一種,下一次吃另一種,這樣;可是gardon不知道是否存在一種吃糖果的順序使得他能把所有糖果都吃完?請你寫個程式幫忙計算一下。
輸入:第一行有乙個整數t,接下來t組資料,每組資料佔2行,第一行是乙個整數n(0輸出:
對於每組資料,輸出一行,包含乙個"yes"或者"no"。
樣例輸入:23
4 1 1
55 4 3 2 1
樣例輸出:
noyes
在網上看了不少人貼了題解,但是都是說舉例發現,個人認為不是特別友善。因此寫一篇小文章,分析一下這道題的數學背景。
設糖果有t種, 每一種有x1,x2,x3,…xt 個。
步驟一: 取x1,x2,x3…xt 中最小值xmin。即標準地每種吃乙個,直到把最少的那一組吃完)
那麼接下來剩餘的糖果種類為t - 1,每一種有x1-xmin1,x2-xmin1,x3-xmin1…xt-xmin1 個
步驟二:在剩餘的t-1種糖果中,找出數量最少的,即x1-xmin1;那麼剩餘的糖果種類為t-2,每一種有x1-xmin1-xmin2,x2-xmin1-xmin2…xt-xmin1-xmin2個
重複以上步驟直到最後只剩一種糖果,這個糖果的數量為,xmax - xmin1- xmin2 - xmin3 …- xmin(t-1)。如果這個值大於1,則輸出』no』;否則輸出』yes『。
其實可以先排好序,這樣邏輯會更清楚一些。
吃糖果問題
hoho,終於從speakless手上贏走了所有的糖果,是gardon吃糖果時有個特殊的癖好,就是不喜歡將一樣的糖果放在一起吃,喜歡先吃一種,下一次吃另一種,這樣 可是gardon不知道是否存在一種吃糖果的順序使得他能把所有糖果都吃完?請你寫個程式幫忙計算一下。第一行有乙個整數t,接下來t組資料,每...
問題 A 吃糖果
名名的媽媽從外地出差回來,帶了一盒好吃又精美的巧克力給名名 盒內共有 n 塊巧克力,20 n 0 媽媽告訴名名每天可以吃一塊或者兩塊巧克力。假設名名每天都吃巧克力,問名名共有多少種不同的吃完巧克力的方案。例如 如果n 1,則名名第1天就吃掉它,共有1種方案 如果n 2,則名名可以第1天吃1塊,第2天...
問題 A 吃糖果
題目鏈結 題目描述 名名的媽媽從外地出差回來,帶了一盒好吃又精美的巧克力給名名 盒內共有 n 塊巧克力,20 n 0 媽媽告訴名名每天可以吃一塊或者兩塊巧克力。假設名名每天都吃巧克力,問名名共有多少種不同的吃完巧克力的方案。例如 如果n 1,則名名第1天就吃掉它,共有1種方案 如果n 2,則名名可以...