当前位置: 首页 > news >正文

网站建设服务器主板1150针百度域名注册

网站建设服务器主板1150针,百度域名注册,学校网站制作,厦门seo网站建设费用✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📚专栏地址:蓝桥杯题解集合 📝原题地址:翻硬币 📣专栏定位:为想参加蓝桥杯的小伙伴整理常考算法题解,祝大家都…

✍个人博客:https://blog.csdn.net/Newin2020?spm=1011.2415.3001.5343
📚专栏地址:蓝桥杯题解集合
📝原题地址:翻硬币
📣专栏定位:为想参加蓝桥杯的小伙伴整理常考算法题解,祝大家都能取得理想成绩!
❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪

问题描述

小明正在玩一个“翻硬币”的游戏。

桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。

比如,可能情形是:**oo***oooo

如果同时翻转左边的两个硬币,则变为:oooo***oooo

现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?

我们约定:把翻动相邻的两个硬币叫做一步操作。

输入格式

两行等长的字符串,分别表示初始状态和要达到的目标状态。

输出格式

一个整数,表示最小操作步数

数据范围

输入字符串的长度均不超过100。
数据保证答案一定有解。

输入样例1:

**********
o****o****

输出样例1:

5

输入样例2:

*o**o***o***
*o***o**o***

输出样例2:

1

思路

本题需要我们将给定的起始状态转换成目标状态,并且每次都只能翻转相邻的两个硬币。

我们可以从前往后进行递推,如果第一个硬币的状态与目标状态不同,则需要对其及其相邻的硬币进行反转,这样第一个硬币就得到了目标状态,并且不能再改变,因为再翻转状态就不对了。同样去判断第二个硬币与目标状态是否不同,如果相同则不做改动,不同则翻转它和它后面的那一个硬币。

以此类推,最终我们可以发现,当第一个硬币状态确定下来之后,后面的硬币都会随之发生改变,并且会确定下来,因此只用从前往后进行判断并计算翻转个数即可。

举个例子,假设初始状态和目标状态如下图所示:

然后从第一个硬币开始往后递推,发现第一个硬币和目标状态不同,故将第一个硬币以及其后面那个硬币进行翻转,从而确定下第一个硬币的状态。

同样,我们可以发现第二个硬币也和目标状态不同,做上面一样的操作。

第三个硬币同样和第二个硬币情况一样。

第四个硬币和上面操作一样,不过这里不同的地方就是,第四个硬币后面的那个硬币一起翻转后反而达到了目标状态。

于是后面的硬币可以发现都已经达到了目标状态,故不用再翻转,最终翻转了四次硬币达到了目标状态。

代码

#include <bits/stdc++.h>
using namespace std;const int N = 110;
char st[N], ed[N];void turn(int x) {if (st[x] == '*')st[x] = 'o';elsest[x] = '*';
}int main() {cin >> st >> ed;int n = strlen(st), step = 0;for (int i = 0; i < n - 1; i++) {if (st[i] != ed[i]) {turn(i);turn(i + 1);step++;}}cout << step << endl;return 0;
}
http://www.dt0577.cn/news/15265.html

相关文章:

  • 公安网站开发功能需求南京seo优化公司
  • qq浏览器在线网页福州短视频seo网站
  • 营销型网站的建设步骤宁波正规seo推广
  • 网站建设和编程的区别app推广怎么做
  • fqapps com网站怎么做在哪里可以发布自己的广告
  • 网站怎么做图片动态图片不显示不出来seo排名赚app最新版本
  • flash网站引导页属于b2b的网站有哪些
  • 网站建设销售客户疑问关键词优化的价格查询
  • 南山网站设计方案搜索引擎提交入口网址
  • 中国做的比较好的电商网站有哪些百度竞价排名什么意思
  • 做论坛网站的元素seo案例分析
  • 凡客建站网宁波seo行者seo09
  • 佛山企业网站制作yande搜索引擎官网入口
  • java网站开发计划表推广引流方法有哪些推广方法
  • 网站移动窗口代码搜索词排行榜
  • 广州网站建设菲利宾百度知道官网
  • 搭建什么网站好玩seo网上培训课程
  • 做易购网站如何推广网站运营
  • 咸阳企业网站设计开发制作优化大师使用方法
  • 室内设计网站都有哪些平台网站功能优化
  • 网站制作工具有哪些山东疫情最新消息
  • 荣耀官网首页官方网站seo方案撰写
  • 网站建设专家证书学开网店哪个培训机构好正规
  • 珠海响应式网站建设衡阳seo优化首选
  • 做网站阿里云记录值怎么填徐州seo代理计费
  • 嘉兴企业网站模板建站西地那非片多少钱一盒
  • 3d网站建设制作网络营销名词解释
  • 深圳市福田建设股份有限公司网站北大青鸟软件开发培训学费多少
  • 网站图标用代码代替软文推广文章
  • 淘宝联盟链接的网站怎么做移动慧生活app下载