第一題
題目描述
包括有整數的比較、浮點數的比較、雙精度的比較。
先有乙個判斷比較的型別,如果輸入1,則為整數;2為浮點數;3為雙精度。
輸入輸出樣例
輸入:
1
1 2 3
輸出:
3
輸入:
2
1.2 3.6 0
輸出:
3.6
參考**
#include
using
namespace std;
intmain()
else
return0;
}
第二題
題目描述
使用c++新特性編寫程式,輸入乙個字串,按單詞將該字串逆序輸出,該字串最多包含20個單詞,為了簡化問題,字串中不包含標點符號。
輸入輸出樣例
輸入:
xian jiaotong university
輸出:
university jiaotong xian
參考**
第三題
題目描述
考慮char 陣列表示的正整數數字,比如」123」、」976」,現在要將他們變為int型數字,然後將兩個數字作加法。
【分析】樣例輸入:一位的字元型數字減去字元』0『即為該整數,如 』1『-』0『 = 1、』7『-』0『 = 7。
123
123
樣例輸出:
246
參考**
#include
#include
using
namespace std;
intturn
(char a)
return x;
}int
main()
第四題
題目描述
本題目考慮字元陣列形式的串。
【分析】樣例輸入:不斷的從母串 str 中取出和子串長度相等的臨時子串 temp,與子串 str2 進行比較。如果沒有找到子串,返回 -1;成功找到子串,返回子串首字母在母串中的位置,該位置從 0 開始。
abcdef
abcba
樣例輸出:
-1參考**
#include
#include
intjudge
(char a,
char b)
if(k==j)
} i++;}
if(flag!=1)
return-1
;}intmain()
第五題
題目描述
所謂對稱數,就是譬如:1,323,34543之類的數。可以把原來的數的高低位互換,構造乙個新的數,如果和原來的數相等則是對稱數。
輸入乙個數如果是對稱數,返回1,否則返回0
樣例輸入:
1樣例輸出:
1參考**
#include
#include
using
namespace std;
intmain()
if(a==b)cout<<
"1";
else cout<<
"0";
return0;
}
第六題
題目描述
給定k個整數組成的序列,「連續子列」被定義為,其中 1≤i≤j≤k。「最大子列和」則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。
輸入與輸出格式
輸入格式:
輸入第1行給出正整數k (≤100000);第2行給出k個整數,其間以空格分隔。
輸出格式:
在一行中輸出最大子列和。如果序列中所有整數皆為負數,則輸出0。
樣例輸入:
6-2 11 -4 13 -5 -2
樣例輸出:
20參考**
#include
using
namespace std;
intmaxsubsequence
(const
int a,
int n)
if(thissum > maxsum)
maxsum = thissum;}}
return maxsum;
}int
main()
演算法作業 求解餅乾問題 dp
題目 剛看到這道題的時候,第一時間想到的是暴力,但是發現當x位數多起來後運算量太大,遂放棄。就考慮dp來求解,不過水平有限無法發現其狀態轉移方程,就參考了一下這位老哥的解法,發現很簡單。分解餅乾問題 其主要方法就是通過不斷求模取餘數,儲存餘數的狀態,狀態轉移方程為 dp i temp n dp i ...
割線法求解過程 問題求解與演算法
一 問題與問題求解 1.人類問題求解的思維過程 一般思維過程 問題分析 推出假設 檢驗假設 2.領域問題及形式化描述 2.1問題形式化表示 要素 現實 目標 問題 現實,目標 題解 目標 現實 a1,a2,an 2.2問題歸約表示 對問題歸納和簡化,轉化成為簡單問題 要素 目標 算子集 基元問題集 ...
《演算法分析與設計》 作業7 投資問題
問題 設m元錢,n項投資.效益函式fi x 表示將x元投入第i個專案所產生的效益,i 1,2,3,n。問 如何分配這m元錢,使得投資的總效益最高?解析遞推公式。設fk x 表示x萬元投給前k個專案的最大收益,k 1,2,n,x 1,2,m 我們可以得到遞推方程和邊界條件 遞推方程 fk x max0...