数字序列(dseq.cpp)
给定一个长度为n的一个序列A1,A2,…,An,求序列中连续子序列的最大和。 例如:当输入为-5 3 5 7 -15 6 9 27 -36 10时,连续子序列6 9 27的和为42是最大值;而当序列变成-5 3 5 8 -15 6 9 27 -36 10时,连续子序列3 5 8 -15 6 9 27的和为43是最大值。 输入:dseq.in
第一行为n,第二行为n个数(n<1000,-10000<=Ai<=10000), 输出:dseq.out
一个数,表示连续子序列的最大和。 样例: Input(dseq.in) 10 -5 3 5 7 -15 6 9 27 -36 10 棋盘覆盖问题(chessboard.cpp)在一个2?2个方格组成的棋盘中恰有一个方格与其他方格不同(图中标记为-1的方格),称之为特殊方格。现用L型(占3个小格)纸片覆盖棋盘上除特殊方格的所有部分,各纸片不得重叠,于是,用到的纸片数恰好是(4k?1)/3。在下表给出的一个覆盖方案中,k=2,相同的3个数字构成一个纸片。
2 2 4 4 2 -1 1 4 3 1 1 5 3 3 5 5 kkOutput(dseq.out) 42 输入:chessboard.in 第一行为n=2k,第二行开始为残缺棋盘,(n<=64) 输出:chessboard.out
覆盖后的残缺棋盘。 样例: Input(dseq.in) 4 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 Output(dseq.out) 2 2 3 3 2 1 1 3 4 1 -1 5 4 4 5 5
天平砝码:weights.cpp
我们知道,天平在称重的时候,如果使用1、3、9、27...砝码(即砝码为3的方幂),并允许天平两端都可以放砝码的时候,在称量范围内任何重量的物体都可以被称出来;但如果不允许把砝码摆在物体的一端的时候,有些重量是不能称出来的,如5就是无法称出来的。把这样的天平系统所能称出来的重量从小到大排成一个序列,求其中第N个元素的大小。
输入:仅一行,一个正整数M(0 Input(weights.in) 5 Output(weights.out) 10