题解列表

筛选

就很简单的原理

摘要:解题思路:注意事项:参考代# main n = input() n_da = 0 n_xiao = 0 n_number = 0 for i in n:     if(i.isdigit(……

二维经典DP,一维就不写了

解题思路:先定义dp[i][j]:至第i个a和第j个b的最长子序列写出转换方程,若序列a第i个值==序列b第j个值:dp[i][j]=max(dp[i-1][j-1]+1,dp[i][j]),否则:dp[i][j]=max(dp[i-1][j],

回文日期(java暴力)

摘要:参考代码:import java.util.Scanner; public class Main{ public static void main(String[] args) { ……

1097: 蛇行矩阵

```javaimportjava.util.*;publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);intn=sc.nextInt();intsum=1;//定义一个sum值用来表示每一

题解 1062: 二级C语言-公约公倍

解题思路:最大公约数:分别获得2数的所有约数,然后取交集,然后取交集的最大值最小公倍数:循环增加a的倍数,当可以整除b时,跳出循环,即为最小公倍数注意事项:1需要考虑多次输入的情况2生成集合set,取交集&参考代码:#获得所有约数defyue(x):arr=[iforiinrange(1,

一维状态压缩

解题思路:1、自下而上求解(自上而下求解很难搞,用递归很容易超时)。2、注意状态转移方程:dp[t][t1]=dp[t][t1]+Max(dp[t+1][t1+1],dp[t][t1]),这个方程后面会详讲。注意事项:这道题应该写错了,应该是向下或向右下,
优质题解

C语言解汉诺塔问题

摘要: 让我们先从移动一个盘开始,逐渐增加需要移动的盘数。  当我们需要移动一个盘时,只需将该盘移动至C杆。 ```c void move(int n,char a, char b) { p……