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

翻硬币问题

小明正在玩一个“翻硬币”的游戏。桌上放着排成一排的若干硬币,用“”表示正面,用“o”表示反面(是小写字母,不是零)。比如可能情形是“**oo***ooo”,如果同时翻转左边的两个硬币,则变为“oooo***ooo”。已知初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,求对特定局面最少要翻动的次数。
 
输入格式
 
两行等长字符串,分别表示初始状态和要达到的目标状态,每行长度小于1000。
 
输出格式
 
一个整数,表示最小操作步数。
 
样例输入:
**oo***ooo

oooo***ooo

输出:1

//翻硬币
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
char start[N],aim[N];
void turn(int x){
	if(start[x]=='*') start[x]='o';
	else start[x]='*'; 
}

int main(){
	cin>>start;
	cin>>aim;
	int n = strlen(start);
	int count=0; 
	for(int i=0;i<n;++i){
		if(start[i] != aim[i]){
			turn(i);
			turn(i+1);
			count++;
		}
	}	
	cout<<"翻转的次数是:"<<count;
	return 0;
}

 

http://www.dtcms.com/a/69779.html

相关文章:

  • 【Docker compose】neo4j容器安装apoc插件
  • 医疗送药机器人“空间拓扑优化+动态算法决策+多级容错控制”三重链式编程技术解析与应用
  • 【WiFi 7核心技术及未来挑战】
  • 搭建刷题专业版小程序系统
  • 【机器学习chp13--(上)】人工神经网络(MLP结构 + KAN结构 + 卷积神经网络)
  • AI Agent 时代开幕-Manus AI与OpenAI Agent SDK掀起新风暴
  • 4.2 Reactive 对象的深度类型约束方案
  • 婚恋之红娘相亲小程序开发功能与设计详解
  • 福特售后再添亮点,为烈马模块化车身改装提供专业支持
  • Qt运行xxx.so can not open shared object file
  • MacOS 上使用终端彻底格式化 U 盘
  • 介绍HTTP协议基本结构与Linux中基本实现HTTPServer
  • 如何取消GitHub Copilot订阅付费?
  • 非零初始条件系统的传递函数分析
  • Kafka的零拷贝
  • 推荐系统基础
  • 【2025】基于python+django的驾校招生培训管理系统(源码、万字文档、图文修改、调试答疑)
  • linux 命令 tree
  • 神经网络:定义与核心原理
  • 【Python】08、元组
  • 工程化与框架系列(35)--前端微服务架构实践
  • 递归时间复杂度(master),时间复杂度为O(NlogN)的排序
  • 使用spring data MongoDB对MongoDB进行简单CURD操作示例
  • 嵌入式人工智能应用- 第九章 物体识别
  • 织梦dedecmsV5.7提示信息提示框美化(带安装教程和效果展示)
  • 【NLP】 3. Distributional Similarity in NLP(分布式相似性)
  • AI数字人分身系统(Digital Human System)的源码开发、SaaS平台模型技术方案和开发步骤
  • 自由学习记录(44)
  • 2.4滑动窗口专题:将 x 减到 0 的最小操作数
  • GOC学习