• Codeforces Round 266 (Div. 2)



    layout: post
    title: Codeforces Round 266 (Div. 2)
    author: "luowentaoaa"
    catalog: true
    tags:
    mathjax: true
    - codeforces
    - DP


    传送门

    A - Cheap Travel (暴力枚举)

    思路

    直接暴力枚举即可

    B - Wonder Room (暴力)

    思路

    暴力判断其中一个值 最多判断sqrt(n)

    C - Number of Ways (前缀和)

    思路

    首先答案不是3的倍数就肯定无解

    然后就是切两刀的位置

    第一刀肯定是1/3的位置

    第二道肯定是2/3的位置

    然后乘法定理一下

    D - Increase Sequence (DP)

    思路

    想了很久

    (dp[ans][num]) 表示位置在ans并且前面还有k个左端点还没匹配完成

    对于

    (a[i]+num==h) 那么就说明前面的num个还没匹配到的左端点都可以满足他

    所以他可以选择

    do nothing (dp[i][j]+=dp[i-1][j])

    或者画一个右括号 (dp[i][j]+=dp[i-1][j] imes j) 因为这个右端点可以和左边num个左端点任意匹配

    如果(a[i]+num==h-1) 说明前面num个还没有满足i这个点,那么可以肯定的就是他必须要一个左括号!

    所以(dp[i][j]+=dp[i][j-1])

    同时他可以不仅仅画一个左括号,他还可以同时作为一个左端点一个右端点

    所以(dp[i][j]+=dp[i][j] imes (j+1)) (j+1)是因为他不仅可以和左边的(j)个左端点匹配还可以和自己(必须贡献)的左括号匹配

  • 相关阅读:
    去除ArrayList中重复自定义对象元素
    ArrayList去除集合中字符串的重复值(字符串的内容相同)
    java-前端之css
    java-前端之HTML
    java-JDBC
    java-JDBC
    Oracle-视图,约束
    Oracle-查询,,..
    Oracle-查询
    Oracle-查询之函数
  • 原文地址:https://www.cnblogs.com/luowentao/p/10575543.html
Copyright © 2020-2023  润新知