BZOJ1830: [AHOI2008]Y型项链 & BZOJ1789: [Ahoi2008]Necklace Y型项链
【传送门:BZOJ1830&BZOJ1789】
简要题意:
给你3个字符串,你每一次可以在一个字符串的末端删除一个字符或添加一个字符,你需要用尽量少的操作次数使得这3个字符串变成一样的。
题解:
模拟直接搞,模拟以每个串的每个位置为最终答案,求最小值即可
参考代码:
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<cmath>
using namespace std;
char s1[],s2[],s3[];
int main()
{
int len1,len2,len3;
scanf("%d%s",&len1,s1+);
scanf("%d%s",&len2,s2+);
scanf("%d%s",&len3,s3+);
int mmin=<<-,ans;
int b1=,b2=,b3=;
for(int i=;i<=len1;i++)
{
ans=len1-i;
if(b2!=) ans+=len2-b2++i-b2+;
else if(s1[i]!=s2[i]) b2=i,ans+=len2-b2++i-b2+;
else ans+=len2-i;
if(b3!=) ans+=len3-b3++i-b3+;
else if(s1[i]!=s3[i]) b3=i,ans+=len3-b3++i-b3+;
else ans+=len3-i;
mmin=min(ans,mmin);
}
b1=;b2=;b3=;
for(int i=;i<=len2;i++)
{
ans=len2-i;
if(b1!=) ans+=len1-b1++i-b1+;
else if(s2[i]!=s1[i]) b1=i,ans+=len1-b1++i-b1+;
else ans+=len1-i;
if(b3!=) ans+=len3-b3++i-b3+;
else if(s2[i]!=s3[i]) b3=i,ans+=len3-b3++i-b3+;
else ans+=len3-i;
mmin=min(ans,mmin);
}
b1=;b2=;b3=;
for(int i=;i<=len3;i++)
{
ans=len3-i;
if(b1!=) ans+=len1-b1++i-b1+;
else if(s3[i]!=s1[i]) b1=i,ans+=len1-b1++i-b1+;
else ans+=len1-i;
if(b2!=) ans+=len2-b2++i-b2+;
else if(s3[i]!=s2[i]) b2=i,ans+=len2-b2++i-b2+;
else ans+=len2-i;
mmin=min(ans,mmin);
}
printf("%d\n",min(mmin,len1+len2+len3));
return ;
}
BZOJ1830: [AHOI2008]Y型项链 & BZOJ1789: [Ahoi2008]Necklace Y型项链的更多相关文章
- [BZOJ1789][BZOJ1830][Ahoi2008]Necklace Y型项链
[BZOJ1789][BZOJ1830][Ahoi2008]Necklace Y型项链 试题描述 欢乐岛上众多新奇的游乐项目让小可可他们玩的非常开心.现在他们正在玩比赛串项链的游戏,谁串的最快就能得到 ...
- 1789: [Ahoi2008]Necklace Y型项链
1789: [Ahoi2008]Necklace Y型项链 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 421 Solved: 258[Submit] ...
- bzoj 1789: [Ahoi2008]Necklace Y型项链 贪心
1789: [Ahoi2008]Necklace Y型项链 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/Jud ...
- 下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y),y++);
下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y) ...
- Highcharts属性与Y轴数据值刻度显示Y轴最小最大值
Highcharts 官网:https://www.hcharts.cn/demo/highcharts Highcharts API文档:https://api.hcharts.cn/highcha ...
- NAPT 分为锥型(Cone)和 对称型(Symmetric)
NAPT 分为锥型(Cone)和 对称型(Symmetric) 链接:https://www.zhihu.com/question/38729355/answer/86531260 实际上大部运营商提 ...
- vim 复制大块内容。 y,p(是单个y,而不是yy)
vim 复制大块内容. y,p(是单个y,而不是yy)
- bzoj 1787 [Ahoi2008]Meet 紧急集合(1832 [AHOI2008]聚会)
1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec Memory Limit: 162 MBSubmit: 1841 Solved: 857[Submit][ ...
- POJ 1286 Necklace of Beads(项链的珠子)
Necklace of Beads Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 7874 Accepted: 3290 ...
随机推荐
- mysql数据实时同步到Elasticsearch
业务需要把mysql的数据实时同步到ES,实现低延迟的检索到ES中的数据或者进行其它数据分析处理.本文给出以同步mysql binlog的方式实时同步数据到ES的思路, 实践并验证该方式的可行性,以供 ...
- android 推断手机是否支持前置摄像头
话不多说 直接上代码, @SuppressLint("NewApi") public static boolean isSupportFrontCamera() { if (!ha ...
- sql系列(基础篇)-第一章 关于sysdate
第一章 主要的SQL语句 1. 查询数据库系统时间,常以server默认的格式进行显示(依据数据库的字符集而定): 注意:dual 为数据库中的虚表,隶属于管理员 sys 用户,但全部的用户都能够訪 ...
- Python菜鸟晋级12----多线程
Python 多线程 多线程类似于同一时候执行多个不同程序,多线程执行有例如以下长处: 使用线程能够把占领长时间的程序中的任务放到后台去处理. 用户界面能够更加吸引人.这样比方用户点击了一个butto ...
- RSA in .net and dotnet core
dotnet RSAParameters Struct https://docs.microsoft.com/zh-cn/dotnet/api/system.security.cryptography ...
- ORACLE里锁的几种模式
0:none 1:null 空 2:Row-S 行共享(RS):共享表锁 3:Row-X 行专用(RX):用于行的修改 4:Share 共享锁(S):阻止其他DML操作 5:S/Row-X ...
- POJ 3178 凸包+DP (巨坑)
题意: 思路: 这题巨坑!!! 这题巨坑!!! 这题巨坑!!! 这题巨坑!!! 这题巨坑!!! (而且没有题解--.5555555--) 只能照着自己想的写了-- 先求出来凸包 求凸包的方法呢:先找出 ...
- Servlet简单计算器 2.0
jsp 输入界面: <%@ page language="java" contentType="text/html; charset=UTF-8" pag ...
- (转载)Android:学习AIDL,这一篇文章就够了(上)
前言 在决定用这个标题之前甚是忐忑,主要是担心自己对AIDL的理解不够深入,到时候大家看了之后说——你这是什么玩意儿,就这么点东西就敢说够了?简直是坐井观天不知所谓——那样就很尴尬了.不过又转念一想, ...
- hiho1055/hdu1561 - 树形dp转换成背包
题目链接 输入:一棵树,每个节点一个权值. 输出:包括1号节点在内的m个节点组成的连通分量的权值和的最大值 hdu1561和hiho1055一样,只是变换了下说法 /***************** ...