博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[蓝桥杯][历届试题]翻硬币
阅读量:3946 次
发布时间:2019-05-24

本文共 540 字,大约阅读时间需要 1 分钟。

文章目录

题目描述

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

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

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

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

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

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

输入

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

输出

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

样例输入

ooo***

ooo***

样例输出

1

c语言AC代码

遇到第一个方向不同的,可以往前翻,也可以往后翻。

如果往前翻,前面是没有方向相反的,此时总有一个方向相反,所以应该向后翻。
当往后翻时,当遇到方向也不同的时候,此时这两个就都相同了,步数也是最少的

#include 
#include
char a[1005],b[1005];int main(){
scanf("%s",&a); scanf("%s",&b); int i,cou=0,sum=0,j[1005]; for(i=0;i

转载地址:http://aflwi.baihongyu.com/

你可能感兴趣的文章
如何实现首次开机自动power on 蓝牙?
查看>>
Makefile文件中蓝牙相关的宏介绍
查看>>
如何屏蔽掉乱码的push消息
查看>>
登录一些安全网站,比如twitter/facebook,提示安全链接失败,或提示下载文件。
查看>>
如何去除launcher 上默认的 google search bar.
查看>>
Android如何绘制View
查看>>
23种设计模式的索引
查看>>
Can't make emergency call without SIM card
查看>>
不插SIM卡,不能拨打紧急电话
查看>>
COSMOS上实现IP DIAL功能
查看>>
什么话不可以和上司讲
查看>>
请学会淘汰你的上司
查看>>
以人为本
查看>>
全球分布式创新:企业致胜的关键
查看>>
上司最恨员工哪十大"罪行"
查看>>
和上司沟通必备8个黄金句
查看>>
竹笋和榕树的管理学
查看>>
让“抱怨”促进公司进步
查看>>
职场“站队”你站对了吗?
查看>>
培养员工能力与责任
查看>>