123456

​​

:root { --side-bar-bg-color: #fafafa; --control-text-color: #777; }

@include-when-export url(https://fonts.loli.net/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext);

/* open-sans-regular - latin-ext_latin / / open-sans-italic - latin-ext_latin / / open-sans-700 - latin-ext_latin / / open-sans-700italic - latin-ext_latin */ html { font-size: 16px; }

body { font-family: "Open Sans","Clear Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; color: rgb(51, 51, 51); line-height: 1.6; }

#write { max-width: 860px; margin: 0 auto; padding: 30px; padding-bottom: 100px; }

@media only screen and (min-width: 1400px) { #write { max-width: 1024px; } }

@media only screen and (min-width: 1800px) { #write { max-width: 1200px; } }

#write > ul:first-child, #write > ol:first-child{ margin-top: 30px; }

a { color: #4183C4; } h1, h2, h3, h4, h5, h6 { position: relative; margin-top: 1rem; margin-bottom: 1rem; font-weight: bold; line-height: 1.4; cursor: text; } h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, h5:hover a.anchor, h6:hover a.anchor { text-decoration: none; } h1 tt, h1 code { font-size: inherit; } h2 tt, h2 code { font-size: inherit; } h3 tt, h3 code { font-size: inherit; } h4 tt, h4 code { font-size: inherit; } h5 tt, h5 code { font-size: inherit; } h6 tt, h6 code { font-size: inherit; } h1 { font-size: 2.25em; line-height: 1.2; border-bottom: 1px solid #eee; } h2 { font-size: 1.75em; line-height: 1.225; border-bottom: 1px solid #eee; }

/*@media print { .typora-export h1, .typora-export h2 { border-bottom: none; padding-bottom: initial; }

.typora-export h1::after,
.typora-export h2::after {
    content: "";
    display: block;
    height: 100px;
    margin-top: -96px;
    border-top: 1px solid #eee;
}

}*/

h3 { font-size: 1.5em; line-height: 1.43; } h4 { font-size: 1.25em; } h5 { font-size: 1em; } h6 { font-size: 1em; color: #777; } p, blockquote, ul, ol, dl, table{ margin: 0.8em 0; } li>ol, li>ul { margin: 0 0; } hr { height: 2px; padding: 0; margin: 16px 0; background-color: #e7e7e7; border: 0 none; overflow: hidden; box-sizing: content-box; }

li p.first { display: inline-block; } ul, ol { padding-left: 30px; } ul:first-child, ol:first-child { margin-top: 0; } ul:last-child, ol:last-child { margin-bottom: 0; } blockquote { border-left: 4px solid #dfe2e5; padding: 0 15px; color: #777777; } blockquote blockquote { padding-right: 0; } table { padding: 0; word-break: initial; } table tr { border-top: 1px solid #dfe2e5; margin: 0; padding: 0; } table tr:nth-child(2n), thead { background-color: #f8f8f8; } table tr th { font-weight: bold; border: 1px solid #dfe2e5; border-bottom: 0; margin: 0; padding: 6px 13px; } table tr td { border: 1px solid #dfe2e5; margin: 0; padding: 6px 13px; } table tr th:first-child, table tr td:first-child { margin-top: 0; } table tr th:last-child, table tr td:last-child { margin-bottom: 0; }

.CodeMirror-lines { padding-left: 4px; }

.code-tooltip { box-shadow: 0 1px 1px 0 rgba(0,28,36,.3); border-top: 1px solid #eef2f2; }

.md-fences, code, tt { border: 1px solid #e7eaed; background-color: #f8f8f8; border-radius: 3px; padding: 0; padding: 2px 4px 0px 4px; font-size: 0.9em; }

code { background-color: #f3f4f4; padding: 0 2px 0 2px; }

.md-fences { margin-bottom: 15px; margin-top: 15px; padding-top: 8px; padding-bottom: 6px; }

.md-task-list-item > input { margin-left: -1.3em; }

@media print { html { font-size: 13px; } table, pre { page-break-inside: avoid; } pre { word-wrap: break-word; } }

.md-fences { background-color: #f8f8f8; } #write pre.md-meta-block { padding: 1rem; font-size: 85%; line-height: 1.45; background-color: #f7f7f7; border: 0; border-radius: 3px; color: #777777; margin-top: 0 !important; }

.mathjax-block>.code-tooltip { bottom: .375rem; }

.md-mathjax-midline { background: #fafafa; }

#write>h3.md-focus:before{ left: -1.5625rem; top: .375rem; } #write>h4.md-focus:before{ left: -1.5625rem; top: .285714286rem; } #write>h5.md-focus:before{ left: -1.5625rem; top: .285714286rem; } #write>h6.md-focus:before{ left: -1.5625rem; top: .285714286rem; } .md-image>.md-meta { /border: 1px solid #ddd;/ border-radius: 3px; padding: 2px 0px 0px 4px; font-size: 0.9em; color: inherit; }

.md-tag { color: #a7a7a7; opacity: 1; }

.md-toc { margin-top:20px; padding-bottom:20px; }

.sidebar-tabs { border-bottom: none; }

#typora-quick-open { border: 1px solid #ddd; background-color: #f8f8f8; }

#typora-quick-open-item { background-color: #FAFAFA; border-color: #FEFEFE #e5e5e5 #e5e5e5 #eee; border-style: solid; border-width: 1px; }

/** focus mode */ .on-focus-mode blockquote { border-left-color: rgba(85, 85, 85, 0.12); }

header, .context-menu, .megamenu-content, footer{ font-family: "Segoe UI", "Arial", sans-serif; }

.file-node-content:hover .file-node-icon, .file-node-content:hover .file-node-open-state{ visibility: visible; }

.mac-seamless-mode #typora-sidebar { background-color: #fafafa; background-color: var(--side-bar-bg-color); }

.md-lang { color: #b4654d; }

.html-for-mac .context-menu { --item-hover-bg-color: #E6F0FE; }

#md-notification .btn { border: 0; }

.dropdown-menu .divider { border-color: #e5e5e5; }

.ty-preferences .window-content { background-color: #fafafa; }

.ty-preferences .nav-group-item.active { color: white; background: #999; }

</style> </head> <body class='typora-export os-windows'>

1. 状态

区间的状态一般 设 f[l][r] 表示区间 [l][r] ....。但有些时候可以直接设  表示 ...。 转移的时候会依靠断点,即 {}。 常见的优化有两种 :

    1. 四边形不等式
    1. 递推

2.例题

  1. 表达式的亿种可能性

    直接算是不行的,我们要去乘上每一个数的代价。

    eg. : 

  2. 有味道的数字

    爆搜发现  , 且 当且仅当或 时,。

    用  存  的 。

  3. 守卫

    枚举  , ,递推

  4. 祖玛游戏 && 单调栈

    打不过 (二维状态表示不完全) 就加入 (把表示不完全的信息加入状态)

    实在不行还能加辅助数组

    如果循环有后效性,用 

    思想来源于二分 : 把原问题转换为可行性问题

  5. 括号序列

    算重了怎么办? 学习  !

    我们知道

    注意这里没有重复

    同理 , 



3. 好题

  1. HDU - 2476

    (空 -> B) - (A -> B)

  2. CodeForces - 149D

    高维状态 :

     表示 区间中,左端点是,右端点是的方案数。(左右端点均hash过)。

  3. 262144 P

    状态不同于普通区间,设的是

    表示从开始直到合出所需的最小长度。


4.总结

区间  一般满足 一些局部最优解能凑出全局最优解,不行的话就得加维度。

</body> </html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值