HDU6739 2019CCPC秦皇岛赛区 I. Invoker
题目:http://acm.hdu.edu.cn/showproblem.php?pid=6739
思路:暴力dp
一个special skill最多有6种排列组合
将前后两个技能进行36种组合配对
即
dp [ i ] [ j ] ( j 为 s [ i ] 的排列组合 0 <= j <= 5 )
=min( dp [ i ] [ j ] , dp [ i - 1 ] [ k ] ( k 为 s [ i - 1 ] 的排列组合 0 <= k <= 5 ) + s [ i - 1 ] 的第 k 种排列组合与是 s [ i ] 的第 j
种排列组合的两个技能连发的最少按键值
#include<bits/stdc++.h>
using namespace std;
];
map<char,int>mp;
][][]={
"QWE","QEW","WQE","WEQ","EQW","EWQ",
"WWW","WWW","WWW","WWW","WWW","WWW",
"WEE","WEE","EWE","EEW","EWE","EEW",
"QEE","QEE","EQE","EEQ","EQE","EEQ",
"QQE","QEQ","QQE","QEQ","EQQ","EQQ",
"EEE","EEE","EEE","EEE","EEE","EEE",
"QQW","QWQ","QQW","QWQ","WQQ","WQQ",
"QWW","QWW","WQW","WWQ","WQW","WWQ",
"QQQ","QQQ","QQQ","QQQ","QQQ","QQQ",
"WWE","WEW","WWE","WEW","EWW","EWW",
};
][];
int cmp(int a,int b,int c,int d)
{
;
]==p[c][d][]&&p[a][b][]==p[c][d][]) ;
]==p[c][d][]) ;
;
}
int main()
{
mp[,mp[,mp[,mp[,mp[,mp[,mp[,mp[,mp[,mp[;
while(~scanf("%s",s))
{
;s[i];i++)
;j<;j++)
dp[i][j]=(i+)*+i+;
;i<;i++) dp[][i]=;
;s[i];i++)
;j<;j++)
;k<;k++)
dp[i][j]=min(dp[i][j],dp[i-][k]+cmp(mp[s[i-]],k,mp[s[i]],j));
int minn=0x3f3f3f3f;
;i<;i++) minn=min(minn,dp[strlen(s)-][i]);
printf("%d\n",minn+strlen(s));
}
;
}
HDU6739 2019CCPC秦皇岛赛区 I. Invoker的更多相关文章
- 2019CCPC秦皇岛I题 Invoker(DP)
Invoker Time Limit: 15000/12000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total ...
- 2019CCPC秦皇岛赛区(重现赛)- I
链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1009&cid=872 题意: 在 dota2 中有一个叫做祈求 ...
- 2019CCPC秦皇岛赛区(重现赛)- J
链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1010&cid=872 题意: 鉴纯夏是一名成绩不太好的高中生. ...
- 2019CCPC秦皇岛赛区(重现赛)- F
链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1006&cid=872 题意: Z 国近年来一直在考虑遏制国土沙 ...
- HDU6740 2019CCPC秦皇岛赛区 J. MUV LUV EXTRA
题目:http://acm.hdu.edu.cn/showproblem.php?pid=6740思路:求小数部分后k位的真前后缀 倒着kmp就好 #include<bits/stdc++.h& ...
- HDU6736 2019CCPC秦皇岛赛区 F. Forest Program
题目:http://acm.hdu.edu.cn/showproblem.php?pid=6736思路:dfs+栈 判环 设图中环的大小分别为 c1, c2, ..., ck,不属 ...
- 2019ccpc秦皇岛/Gym102361 I - Invoker dp
题意: 连续3个特定的按键(在这3个中不要求顺序)能使出某个技能,使出不同技能所需要的按键可以重叠,给你一个技能序列,问你最少花费多少次按键能按顺序使出这些招数. 题解: dp,dp[i][j]代表使 ...
- 2019-ccpc秦皇岛现场赛
https://www.cnblogs.com/31415926535x/p/11625462.html 昨天和队友模拟了下今年秦皇岛的区域赛,,,(我全程在演 题目链接 D - Decimal 签到 ...
- 2019CCPC秦皇岛 E题 Escape(网络流)
Escape Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Su ...
随机推荐
- react中setState用法
setState()更新状态的2种写法 setState(updater, [callback]), updater为返回stateChange对象的函数: (state, props) => ...
- 【AMAD】python-magic -- libmagic的python封装
简介 动机 作用 用法 个人评分 简介 libmagic的python封装 动机 封装libmagic,使用python代码获取文件类型. 作用 libmagic通过文件头部,来确定文件的类型. 用法 ...
- C学习笔记-文件操作
文件操作大致分三步 打开文件 读写文件 关闭文件 二进制和文本模式的区别 在windows系统中,文本模式下,文件以"\r\n"代表换行.若以文本模式打开文件,并用fputs等函数 ...
- (转)Jquery+Ajax实现Select动态定数据
解决思路: 在数据库中建立类型字典式表.将下拉框需要添加的项,在数据库表里中文.英文名称对应起来. 下拉框动态绑定数据库表中需要字段. <div id="bgDiv" sty ...
- Java 错误:Constructor call must be the first statement in a constructor
今天用学校里的黑马程序员通Java语法 想到了:在有参构造函数中调用无参构造函数 语法是这样的: class Person{ private int age; public Person() { Sy ...
- Eratosthenes筛法
复杂度为nlogn. 算法思想为:枚举1~sqrt(n),然后把每一个数的倍数都都打上不是素数的标记. 还要特别注意0,1不是素数,打标记枚举到i*k<=n. 代码如下 #include< ...
- Hive 教程(十)-UDF
hive 虽然自带了很多函数,但是毕竟有限,无法满足所有业务场景,用户可以自定义函数来实现特定功能 UDF user define function,用户自定义函数 可以分为 3 类 UDF:一进一出 ...
- 编译LAMP部署动态网站环境
LAMP动态网站部署架构是由一套 Linux+Apache+MySQL+PHP 组成的动态网站系统解决方案. 以下配置环境为:Linux=RHEL7 --> Apache=2.4.33 --&g ...
- P3488 [POI2009]LYZ-Ice Skates
传送门 这一题基础是二分图匹配,并且要知道一个 $Hall$ 定理:对于二分图能完全匹配的充要条件是,设点数少的那边为左边,点数为 $n$,对于 $k \in [1,n]$ ,左边任意 $k$ 个点, ...
- 福建工程学院第十四届ACM校赛B题题解
第二集,未来的我发量这么捉急的吗 题意: 有n个数,请问有多少对数字(i,j)(1<=i<j<=n),满足(a[i]^a[j])+((a[i]&a[j])<<1) ...