HDU - 6264 - Super-palindrome(思维)
题意:
给出一个字符串,使得所有的奇数连续子串为回文串,输出最小变化次数
思路:
分析过后,只存在两种情况,1全部为一种字母,2形如abab交替类型
对于奇数位和偶数位单独计数,只需计算出奇数位或者偶数位出现最多字母的次数
情况12其实是一样的解法,情况1可以看为2的一种特殊情况,只需要考虑情况2
找出出现最多的字母的次数,把他作为基底,全部替换为这个字母即可
字符串长度 - 奇数字母次数 - 偶数字母次数 即可
代码:
#include<iostream>
#include<cstring>
#include<map>
#include<algorithm>
#define max(a, b) (a)>(b)?(a):(b)
#define min(a, b) (a)>(b)?(b):(a)
using namespace std;
map<char, int> a,b;
int main() {
int t;
scanf("%d", &t);
while(t--) {
int aa = 0, bb = 0, ans = 99999;
char str[110];
a.clear();
b.clear();
scanf("%s", str);
int len = strlen(str);
for(int i = 0; i < len; i++) {
if((i+1)%2) {
a[str[i]]++;
if(aa < a[str[i]]) aa = a[str[i]];
}
else {
b[str[i]]++;
if(bb < b[str[i]]) bb = b[str[i]];
}
}
printf("%d\n", len - aa - bb);
}
return 0;
}
HDU - 6264 - Super-palindrome(思维)的更多相关文章
- HDU 1087 Super Jumping! Jumping! Jumping
HDU 1087 题目大意:给定一个序列,只能走比当前位置大的位置,不可回头,求能得到的和的最大值.(其实就是求最大上升(可不连续)子序列和) 解题思路:可以定义状态dp[i]表示以a[i]为结尾的上 ...
- DP专题训练之HDU 1087 Super Jumping!
Description Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is ve ...
- hdu 1087 Super Jumping! Jumping! Jumping! 简单的dp
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- HDU 1087 Super Jumping! Jumping! Jumping! 最大递增子序列
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- HDU 4417 Super Mario(主席树求区间内的区间查询+离散化)
Super Mario Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- HDU 1087 Super Jumping! Jumping! Jumping! (DP)
C - Super Jumping! Jumping! Jumping! Time Limit:1000MS Memory Limit:32768KB 64bit IO Format: ...
- HDU 1087 Super Jumping! Jumping! Jumping!(动态规划)
Super Jumping! Jumping! Jumping! Problem Description Nowadays, a kind of chess game called “Super Ju ...
- HDOJ/HDU 1087 Super Jumping! Jumping! Jumping!(经典DP~)
Problem Description Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!&quo ...
- HDU 5062 Beautiful Palindrome Number(数学)
主题链接:http://acm.hdu.edu.cn/showproblem.php? pid=5062 Problem Description A positive integer x can re ...
随机推荐
- HDU 1724 Ellipse 【自适应Simpson积分】
Ellipse Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- ubuntu安装virtualbox
1.下载 2.sudo dpkg -i virtualbox-5.2_5.2.10-122088_Ubuntu_xenial_amd64.deb $sudo dpkg -i virtualbox-5. ...
- Cocos2d-x 3.2编译生成Android程序出错Error running command, return code: 2的解决方法
用Cocos2d-x 3.2正式版创建项目,结果使用cocos compile -p android编译生成APK程序,结果悲剧了,出现以下错误. Android NDK: Invalid APP_S ...
- python-----模糊搜索文件
告诉计算机文件在哪 → 使用路径描述位置 描述文件的特征 → 用条件判断来筛选 比对后打印文件名 → 用循环来实现逐个比对 #!/usr/bin/env python # -*- codi ...
- 远程报错:这可能是由于credssp加密oracle修正
- 2010–2011, NEERC, Northern Subregional C.Commuting Functions
C.Commuting Functions 由于要求答案字典序最小,我们肯定希望从g(1)开始对函数g进行赋值,于是又公式f(g(x))=g(f(x)) 设f(x)=i 我们推导出 由于f是双射,当i ...
- poj1286 Necklace of Beads—— Polya定理
题目:http://poj.org/problem?id=1286 真·Polya定理模板题: 写完以后感觉理解更深刻了呢. 代码如下: #include<iostream> #inclu ...
- Eclipse 配置 Python 环境
1.将下载好的Pydev4.5.2(http://sourceforge.net/projects/pydev/files/pydev/ 里面有很多版本) 文件夹里的两个文件夹(features+p ...
- http报文和协议首部
http报文和协议首部 http报文 3>报文格式 request 报文 <method> <request-URL> <version> <heade ...
- hdu4292 Food 最大流模板题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4292 题意:水和饮料,建图跑最大流模板. 我用的是学长的模板,最然我还没有仔细理解,不过这都不重要直接 ...