zoukankan      html  css  js  c++  java
  • 停课day5

    一转眼,已经停课五天了。

    高二大佬们已经都走了,在机房里面呆着,有时感觉很孤寂。

    但是为了能学好竞赛,这些都是在所不惜的。

    好像多打打比赛啊,可是cf要FQ,洛谷之类的比赛还不勤。

    哎,先去学一发SPFA

    dsfz 周四考试第二题dp

    题面有错

    for(int i=n-1;i>=1;i--){
            dp[i][a[i]-1]=(dp[i+1][a[i]]+a[i]*dp[i+1][a[i]-1])%mod;
            dp[i][a[i]]=(a[i]*dp[i+1][a[i]-1]+dp[i+1][a[i]])%mod;
     }

    这是dp试(从后往前推会好一点吧) 因为对于每一个,a[i]成立的情况,无非两种,即前面+a[i]或a[i]-1;

    而如果+a[i]-1则在i处必须开一个以i为左端点的区间就转化成了+a[i]的情况

    而对于+a[i] 又分为两种情况,有括回,无括回。

    有括回 会有a[i]种情况,对答案的贡献为a[i]*dp[i+1][a[i]-1]

    无括回 dp[i+1][a[i]]

    别忘了边缘要特判

    if(a[n]>1){

            cout<<0;
            return 0;
        }
        dp[n][0]=1;
        if(a[n]==1)dp[n][1]=1;
  • 相关阅读:
    毕设问题02-index.jsp跳转html问题
    毕设问题01-html中引入公共部分代码
    毕设开篇
    object和大括号自定义对象
    数组js
    function 方法的使用
    JavaScript01
    CSS属性
    听说不能改日期了
    获取时间
  • 原文地址:https://www.cnblogs.com/Amphetamine/p/7027775.html
Copyright © 2011-2022 走看看