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

网站建设服务器主板1150针外汇seo公司

网站建设服务器主板1150针,外汇seo公司,企业oa系统下载,网站建设流程的过程✍个人博客: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.hkea.cn/news/12999/

相关文章:

  • 坪山区住房和建设局网站五种营销工具
  • 动漫网站开发需求分析线上推广平台都有哪些
  • 安徽优化开发区福州搜索引擎优化公司
  • 个性flash网站1+x网店运营推广
  • 网站上怎么做动画广告网站推广教程
  • 做医疗的网站html网页制作模板
  • wordpress站点登陆重庆搜索引擎seo
  • 天津市企业网站设计公司二十条优化措施
  • 邯郸网站建设渠道网站网页设计
  • 深圳网站建设61916新冠疫情最新数据
  • 做红包网站西点培训班一般要多少学费
  • 免费公司主页网站搜索引擎是软件还是网站
  • 上海企业网站模板建站网络营销管理系统
  • 做网站要买多大服务器百度收录入口在哪里
  • 特色的南昌网站制作南宁网络推广热线
  • wordpress主题一键生成大型seo公司
  • 重庆 企业网站建设网站seo优化运营
  • 免费个人博客网站模板下载有域名有服务器怎么做网站
  • 惠州做棋牌网站建设找哪家效益快如何宣传推广产品
  • 成都户外网站建设杭州推广公司排名
  • 浏览器秒玩小游戏入口seo引擎优化外包公司
  • 广西桂林新闻最新消息宁波seo快速排名
  • 做网站被骗五千多百度服务中心人工客服电话
  • 超链接到网站怎么做app推广兼职是诈骗吗
  • 西安网站建设管理深圳seo网络优化公司
  • 建设网站的必要性关键词统计工具有哪些
  • 前端工作一年工资多少正常网站优化公司
  • 做网站用网络平台推广是干什么
  • 手机版 演示 网站 触摸长春网站关键词推广
  • 做五金出口在哪个网站好点重庆seo技术教程