【2018.3.31】模拟赛之四-ssl2408 句子【dp,字符串】
正题
大意
先给出n个句子,然后给出一个最终句子。最终句子由多个句子加密后组成(可能重复)。加密方法就是将字母调换位置,加密代价就是该位置与原来的字母不同的数量。求达到最终句子的最小加密代价
解题思路
用f[i]f[i]f[i]表示最终句子已经完成了前i个单词的最小代价,枚举加密用的句子,然后列出动态转移方程:
f[i]=f[i-len[j]]+w
w为该段支付的加密代价。
代码
#include<cstdio>
#include<string>
#include<iostream>
using namespace std;
int n,al,l[51],t[26],w,f[101];
string s[51],ans;
int main()
{scanf("%d",&n);for (int i=1;i<=n;i++){cin>>s[i];l[i]=s[i].size();}cin>>ans;al=ans.size();for (int i=1;i<=al;i++){f[i]=214748364;for (int j=1;j<=n;j++){if (i<l[j]) continue;for (int k=0;k<26;k++) t[k]=0;//桶w=0;for (int k=0;k<l[j];k++){if (ans[i-l[j]+k]!=s[j][k]) w++;//代价t[int(ans[i-l[j]+k])-97]++;t[int(s[j][k])-97]--;}for (int k=0;k<26;k++)if (t[k]) {w=214748364;break;//无法连接}f[i]=min(f[i],f[i-l[j]]+w);//动态转移}}if (f[al]==214748364) printf("-1");//无解else printf("%d",f[al]);//输出
}
【2018.3.31】模拟赛之四-ssl2408 句子【dp,字符串】相关推荐
- 2018.10.31模拟赛
T1 lgg L 君和 G 君在玩一个游戏.G 君写下一个字符串 A,L 君将其复制一遍连接到 A 串后面得 到字符串 B, G 君又在 B 的任意位置(包括首尾)插入一个字符得到字符串 C.现在你得 ...
- 2018.10.9模拟赛
2018.10.9模拟赛 T1 trade 正解:贪心 据说lyd讲过但并没有印象QAQ,考场上现推浪费了不少时间 其实就开个小根堆,每次把堆顶取出来看它是不是比当前的 a[i]a[i]a[i] 小, ...
- 2020/10/31模拟赛
CSP第二轮前模拟赛 我太菜了 T1 题目描述 奶牛们对围栏的高度非常敏感.奶牛希望围栏高度既不太矮以至于他们没有安全感,也不太高以至于她们看不见围栏外的天地.所以每头奶牛都有自己喜欢的高度.奶牛有N ...
- 【2018.3.31】模拟赛之三-ssl2408 比萨【搜索,dfs】
正题 大意 有t种配料,有n种限制.限制就是几种配料不能同时使用(可能有多种).求方案数 解题思路 暴力搜索能过 代码 #include<cstdio> using namespace s ...
- 【2018.3.24】模拟赛之四-ssl2548 旋转【暴力模拟】
正题 大意 给出一块黑块和白块组成的版,将其旋转90°后和之前的黑块叠加,求最初始和每次旋转后的黑块数. 解题思路 暴力模拟不解释 代码 #include<cstdio> #include ...
- 【2018.5.19】模拟赛之四-ssl2435 航空公司【并查集,二分】
正题 题目大意 有n个点,给出坐标,选择所有距离在k之内的边要求联通所有点,求最小的k. 解题思路 垃圾解法 用二分答案然后加并查集求是否联通. 时间复杂度:O(mlogn)O(mlogn)O(mlo ...
- 【2018.5.12】模拟赛之四-ssl2416 条形图【高精度,dp】
正题 题目大意 第iii行有n−i+1" role="presentation" style="position: relative;">n−i ...
- 【2018.4.21】模拟赛之四-ssl2405 巧克力【实际上是模拟】
正题 大意 有n块巧克力,一个a*b的网格,如果网格可以完全包括一块巧克力就可以获得这块巧克力,求最多能获得的巧克力数量 解题思路 枚举点(在巧克力上的)和各种情况,然后判断这种情况包括多少个巧克力, ...
- 【2018.4.14】模拟赛之四-ssl2394 剪草【dp】
正题 大意 有n株草,没个时间单位开始时会增长不同的长度.每个时间单位可以将一株草剪成高度为0,求多少时间单位后能够将草的总高度减低为h以下,或用远不能. 解题思路 首先需要一段玄学推理: 可以等草长 ...
最新文章
- Java第一个程序(CMD环境)
- mac怎么配置php开发环境变量,Mac M1安装mnmp(Mac+Nginx+MySQL+PHP)开发环境
- php ajax加载,php – 什么更快? Ajax加载JSON或Ajax加载完整输出
- css3 Gradient 背景渐变
- mysql 常用日期,时间函数
- 今天开通android博客 该认真学习了
- ServletContextListener作用(转)
- 多目标优化算法(一)NSGA-Ⅱ(NSGA2)
- ce标志cad_CAD自定义快捷键+常用符号
- Uniapp微信雪糕刺客单页小程序源码
- excel表格打印每页都有表头_EXCEL打印小技巧:如何打印出每张纸上都有表头标题的表格?...
- 解决关于腾讯会议黑屏问题(ThinkpadE420型号)
- matlab中除号的有效字符,乘号(x)、除号(÷)、双引号()等字符实体的HTML代码...
- 手机怎么实现图片转文字操作?学会这三招就够了
- 苹果屏和android屏哪个更真实,同是LCD屏,为什么iPhone的实际体验比安卓好许多...
- C#从字节数组截取片段(转载)
- Matlab中rgb2ind函数用法
- Http是传输层吗?TCP是个么层?IP/TCP与HTTP的关系?
- Xshell 使用技巧
- 物理学十大实验(6-10)
热门文章
- c语言基类型,C语言基本类型边界值
- 10kv电压互感器型号_电压互感器型号大全
- linux 核显驱动程序,支持下代核显 Intel放出Linux图形驱动
- python反射、闭包、装饰器_python之闭包、装饰器、生成器、反射
- php中请写出定义变量的两种方法,php定义变量几种
- 无法初始化java类_myeclip运行java程序不能初始化类 NoClassDefFoundError
- qt 从文件中读出数据显示在表格中_QT中有什么控件可以实现向excel的表格显示,qt数据存储到Excel表格...
- [mybatis]缓存_缓存有关的设置以及属性
- [Java基础]标准输入输出流
- AcWing 703. 数独检查