Codeforces Round #210 (Div. 1)
来源:互联网 发布:贵州广电网络维修电话 编辑:程序博客网 时间:2024/06/09 23:39
http://codeforces.com/contest/360
A. Levko and Array Recovery
从后往前根据操作给每个位置赋值,然后还要从前往后判断操作是否可行。
B. Levko and Array
给你n个数,最多可以改变k个数,使得val = max( a(i), a(i+1) )尽量小,最小是多少。 n <= 2000
思路:首先考虑高复杂度的,设dp[i][j]表示 i 这个位置不变,前面已经改变了j个数最小的val值。那么 dp[i][j]可以由 dp[k][j-1] k < i转移过来,表示i位置不变k位置也不变中间的随意变,所以 dp[i][j] = min( dp[k][j-1] + i-j-1) ,每个转移是O(n)的,总复杂度是O(n^3)。
二分答案X,复杂度就降低到了O(n^2logn)。。就done了
C. Levko and Strings
题意自己理解。。
思路: 设dp[i][j]表示i这个位置不等于s[i]的产生的值为j的情况数。
dp[i][j]一个转移是由前一个与原串字母不一样的转移过来的。则
如果上一个不一样的字母在cur这个位置,那么如果t[i] > s[i],可以产生 (n-i+1)*(i-cur)的值。
转移的复杂度是O(n*logn)的,可以自己好好想想。具体见代码
- Codeforces Round #210 (Div. 1)
- Codeforces Round #210 (Div. 1)
- Codeforces Round #210 (Div. 2)
- Codeforces Round #110 (Div. 1)
- Codeforces Round #138 (Div. 1)
- Codeforces Round #140 (Div. 1)
- Codeforces Round #153 (Div. 1)
- Codeforces Round #157 (Div. 1)
- Codeforces Round #160 (Div. 1)
- Codeforces Round #162 (Div. 1)
- Codeforces Round #165 (Div. 1)
- Codeforces Round #165 (Div. 1)
- Codeforces Round #167 (Div. 1)
- Codeforces Round #168 (Div. 1)
- Codeforces Round #174 (Div. 1)
- Codeforces Round #187 DIV 1
- Codeforces Round #198 (Div. 1)
- Codeforces Round #198 (Div. 1)
- 30岁IT人员十大能力
- 笔记本设置wifi热点
- [分享]Results of a Customer Satisfaction Survey a Hotel(一旅店调查的客户满意度结果数据集)
- 技术书籍推荐
- QT中如何文字变成图片
- Codeforces Round #210 (Div. 1)
- 第十二周项目1-当年第几天
- 【C语言】指针的基本概念
- struts2-dojo-plugin时间控件乱码解决
- listview上进行ontouch事件,可滑动,可点击页面跳转
- 配置IIS主机头,实现一机部署多个网站(共用80端口)
- matlab描点并标上点的序号
- Myeclipse优化
- poj Stars 2352