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 ...
随机推荐
- Unreal Engine 4 优化教程
本教程旨在帮助开发人员提升基于虚幻引擎(Unreal Engine*4 (UE4))开发的游戏性能.在教程中,我们对引擎内部及外部使用的一系列工具,以及面向编辑器的最佳实践加以概述,还提供了有助于提高 ...
- 手写LVQ(学习向量量化)聚类算法
LVQ聚类与k-means不同之处在于,它是有标记的聚类,设定带标签的k个原型向量(即团簇中心),根据样本标签是否与原型向量的标签一致,对原型向量进行更新. 最后,根据样本到原型向量的距离,对样本进行 ...
- Leetcode之动态规划(DP)专题-338. 比特位计数(Counting Bits)
Leetcode之动态规划(DP)专题-338. 比特位计数(Counting Bits) 给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数 ...
- 【神经网络与深度学习】Google Snappy - 一个高速压缩库
Snappy已经被Google开源,作为一个压缩库,它可以利用单颗Intel Corei7处理器内核处理至少每秒250MB~500MB的数据流. Snappy的前身是Zippy.虽然只是一个数据压缩库 ...
- 【Linux开发】linux设备驱动归纳总结(十二):简单的数码相框
linux设备驱动归纳总结(十二):简单的数码相框 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...
- vscode配置PHP Debug
1.先在vscode中安装PHP Debug,在设置添加“php.validate.executablePath”项,选中对应版本的php.exe. "php.validate.execut ...
- aws 基于延迟策略配置dns故障切换
前提:由于国内访问首尔地区经常出现不稳定情况,现将请求从nginx(sz)转发到nginx(hk)再转发到首尔地区,在基于不改变nginx(seoul)的配置的前提下,引入aws的延迟策略,同时保证国 ...
- hashmap C++实现
hashmap.h #ifndef _HASHMAP_H_ #define _HASHMAP_H_ template<class Key, class Value> class HashN ...
- 用ufile和S3代替hdfs存储数据
一,添加ufile需在配置中添加: core-site.xml添加如下配置:<property><name>fs.ufile.impl</name><valu ...
- Java小知识-----Map 按Key排序和按Value排序
Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value). 1.按键排序 jdk内置的java.util包下的Tr ...