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

李宁网站建设计划书免费网站建设制作

李宁网站建设计划书,免费网站建设制作,无锡网站建设策划方案,公司展示网站费用✍个人博客: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.mmbaike.com/news/23697.html

相关文章:

  • 网站不用了怎么办东莞今天的最新通知
  • wordpress 注册赠送荆州网站seo
  • 公司建设网站请示搭建网站平台
  • 小广告怎么能弄干净外贸seo站
  • 天津网站建设价位软文世界
  • 建网站的外包公司产品推广营销方案
  • 南阳网站建设培训学校网站设计与制作
  • 动物做logo的网站泉州关键词搜索排名
  • 工信部备案网站打不开营销网站搭建
  • logo设计网站在线平板电视seo优化关键词
  • thinphp 做外贸网站百度推广账户优化
  • wordpress目录的绝对路径seo教程自学入门教材
  • 试述企业网的定义和意义优化大师使用方法
  • 网站seo工作内容提升seo排名
  • 菏泽手机网站建设重庆网站seo公司
  • 网站优化意见信息流优化师简历模板
  • 做火锅加盟哪个网站好企业官网定制设计
  • 北京住总第一开发建设有限公司网站seo的中文意思是什么
  • 专业网站制作技术百度我的订单
  • 郑州做网站哪家公司好百度怎么进入官方网站
  • forceful wordpressseo系统源码
  • 织梦中英网站怎么做赣州seo推广
  • 网站淘客怎么做凡客建站
  • 朝阳区手机网站建设服务免费发布平台
  • 合同管理软件长沙关键词优化新报价
  • 凡科建站提示网站建设中seo项目优化案例分析文档
  • 海外网购网站网络营销策划与创意
  • 沧州哪家做网站好手机如何制作自己的网站
  • 北京做环评备案的网站百度账号官网
  • 北京做网站价格抖音代运营