動規題,方法很巧。很像揹包問題,這道題我們可以想成給了空間m,讓你求價值之和與m的差最小的那個和,如果超過了m的某個和與小於m的某個和與m之差相等,取小的那個,而我們的方法是將揹包空間擴充兩倍,初始化f[0][0] = 1;f[i][0] = 0;我們利用01揹包的知識求出2m空間的所有值,然後從f[n][j]中以m為中心向兩邊找,找到第乙個為1的f[n][j](如果兩邊相等取小的),即為所求。(從整個空間開始不斷的減少(增加)空間,看最近的哪乙個恰好能夠裝滿)。
**如下:
#include#define maxn 2010int f[maxn][maxn], a[1010
];int
m,n;
void
solve()
for(int i = 1; i <= n;i ++)
}for(int i = 0;; i ++)
if(f[n][m - i] || f[n][m +i])
else printf("
%d\n
",m + i + 18
);
break
; }
}void
input()
solve();
}}int
main()
1 24學習計畫
1 在我們第乙個課題的基礎上。改寫定時器中斷的內容,做到每隔1s閃爍,再每隔2s閃爍,再隔3s閃爍,然後一直這樣迴圈,其他的led還有示波器都和原來的要求一樣。一遍一遍的對照著led0開始計算led1是不是已經達到了迴圈的要求。1 每隔一秒閃爍 則週期為2 每隔2s閃爍則週期為4 每隔3s閃爍,週期...
12 4 友元函式
類中的私有成員和保護成員是只能類內訪問,但在某些特殊情況,我們希望類外也能訪問,這就要用到友元技術。在類中宣告該函式並在前面加上friend關鍵字,這樣函式就可以暢通無阻地訪問私有和保護成員了。12.4.1 全域性函式做友元 include include using namespace std c...
菜鳥學C Primer 習題1 24
學習c primer中習題1.24的 算是對書中答案的補充吧,令附有一些疑問,留待解決 一 這個 可行無差錯。include include sales item.h int main if i sum 1 item sum book for i 0 i sum i std cout item i ...