自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Two Rabbits

这一题我用的是DP(c++)DP[i][j]:表示从i到j的最长的回文子串。最优解公式:if(a[i]==a[j]) dp[i][j]=dp[i+1][j-1]+2; else dp[i][j]=max(dp[i+1][j],dp[i][j-1]);当(i,j)这个区间里的首部a[i]==尾部a[j]时,(i,j)里面的最长回文子串等于(i+1,j-1)里面最长的回文子串+2;当不相等的时候,取(i+1,j)和(i,j-1)里面回文子串的最大值。...

2022-07-02 14:50:30 78

原创 折线分割平面

在第i次要是想要有最大的面数,我们需要有最多的交点(c++)因为通过观察,面数=交点数目+1比如第一根折线自身有一个交点,面数是2;第二个有6个交点,面数有7个;所以要想增加最多的面数,就相当于增加最多的交点。要想增加最多的交点,就要让第i条折线的2条边与上一次的2*i-2条边都有交点,即增加了4*i-4个交点,在加上折线自身的1个,则有4*i-3个交点。综上所述:公式为a[i]=a[i-1]+4*i-3....

2022-07-01 15:43:01 64

原创 一只小蜜蜂

公式:a[i]=a[i-1]+a[i-2](c++)公式讲解:通过观察我们可以发现路线的数目只和长度有关系,比如1->3和3->5的路线是一样的;然后长度为n的,它只可以是n-1和n-2到达所以我们只要进行递归就OK了。...

2022-07-01 11:30:27 39

原创 母牛的故事

牛从出生第4年可以生一头奶牛,刚开始一头在4年的每一年分别是1,2,3,4;接下来第二年的奶牛可以生了,所以第5年是6;相当于是每4个看成一起,我们现在是要求第n年的,第n年看成是第4年,然后今年的数目应该是前一年的在加上可以进行生育的(前三年的到了第4年就可以生育了)综上所述,公式为a[i]=a[i-1]+a[i-3](i>3) 2 4 5 0 2 4 6 牛从出生第4年可以生一头奶牛,刚开始...

2022-07-01 10:42:36 58

原创 简单DP--数塔

DP数塔,从下往上每二层一起看,上一层去加下一层的二个数,取出最大值,一直到数组的第一层。

2022-07-01 10:16:24 120 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除