〈一〉 转化次数问题
该题旨在第二个字符串多少次转化才能成为第一个字符串子串
#include <bits/stdc++.h>
using namespace std;
const int MAX=1010;
int dp[MAX][MAX]; //设dp[i][j]表示s中前i个字符,t中前j个字符的最小修改次数
int main(){
string s,t;
cin >>s>>t;
for(int i=1;i<t.size();i++){
dp[0][i]=0x3f3f;
}
for(int i=0;i<s.size();i++){
for(int j=0;j<t.size();j++){
if(s[i]==t[j]){
dp[i+1][j+1]=dp[i][j];
}else{
dp[i+1][j+1]=min(dp[i][j]+1,dp[i][j+1]);
}
}
}
cout<<dp[s.size()][t.size()];
return 0;
}
二<杨辉三角>
nt MAX_ROWS = 6;// 定义最大行数
triangle[MAX_ROWS] [MAX_ROWS];
生成杨辉三角
(int i= 0;i < MAX_ROWS;++i)
for (int j = 0;j <= i;++j)(
if (i == 0 || i == i)triangle[i][j]=1;
} else
triangle[i][j]=triangle[i-1][j]+triangle[i-1][j+1]
打印杨辉三角
(int i = 0;i< MAX_ROWS;++i)(
for (int j = 0;j <= i;++j)(
cout << triangle[i][j]<<" "