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

洛谷C++简单题小练习day10—umi的函数

day10--umi的函数--2.13

习题概述

题目背景

umi 找到了一个神秘的函数 f。

题目描述

这个函数接受两个字符串 s1,s2。这些字符串只能由小写字母组成并且具有相同的长度。这个函数的输出是另一个长度与 s1,s2 相同的字符串 g。

g 的第 i 个字符等于 s1 的第 i 个字符和 s2 的第 i 个字符的最小值   g[i] = min( s1[i] , s2[i] )

例如:f ("ab","ba") = "aa"     f ("nzwzl","zizez") ="niwel"

她现在有两个相同长度的只有小写字母的字符串 x,y。找出任何一个满足 f(x,z)=y 的

字符串 z。如果找不到这样的字符串的话,请输出-1。

输入格式

第一行给出以下两个字符串的长度 n。

第二行给出一个字符串 x。

第三行给出一个字符串 y。

输出格式

第一行输出一个字符串,代表你找到的符合条件的字符串。找不到的话,请输出-1。

代码部分

#include<bits/stdc++.h>
using namespace std;int main() {int n;//字符串的长度
//x,y,z分别用来存储输入的2个字符串及最终输出字符串 string x, y, z;cin >> n;cin >> x >> y;z = x; //初始化 z为 xfor (int i = 0; i < n; i++) {if (x[i] < y[i]) {cout << -1 << endl;return 0;}z[i] = min(x[i], y[i]); //更新 z[i]为 x[i]和y[i]的最小值}cout << z << endl;return 0;
}

心得体会

1.该函数的目标是找到一个字符串 z,使得 z 的每个字符都是 x 和 y 对应位置字符的最小值。

具体实现如下:

1)首先,从输入中读取字符串的长度 n,以及字符串 x 和 y

2)  将字符串 z 初始化为与 x 相同的值。

3)  使用循环遍历字符串的每个字符,检查 x[i] 和 y[i] 的值。如果 x[i] 小于 y[i],则无法找到满足条件的字符串 z,输出 -1 并结束程序。

4)   如果 x[i] 不小于 y[i],将 z[i] 更新为 x[i] 和 y[i] 中的较小值,即满足函数 f(x, z) = y 的字符。

5)   循环结束后,输出字符串 z,即满足条件的字符串。

2.要比较每个字符串中的每个字符的大小,要用到数组来表示。

相关文章:

洛谷C++简单题小练习day10—umi的函数

day10--umi的函数--2.13 习题概述 题目背景 umi 找到了一个神秘的函数 f。 题目描述 这个函数接受两个字符串 s1,s2。这些字符串只能由小写字母组成并且具有相同的长度。这个函数的输出是另一个长度与 s1,s2 相同的字符串 g。 g 的第 i 个字符等于 s1 的第 i 个字符和 s2…...

【Linux学习】线程互斥与同步

目录 二十.线程互斥 20.1 什么是线程互斥&#xff1f; 20.2 为什么需要线程互斥? 20.3 互斥锁mutex 20.4 互斥量的接口 20.4.1 互斥量初始 20.4.2 互斥量销毁 20.4.3 互斥量加锁 20.4.4 互斥量解锁 20.4.5 互斥量的基本原理 20.4.6 带上互斥锁后的抢票程序 20.5 死锁问题 死锁…...

前端开发:(三)CSS入门

1. 介绍CSS 1.1 什么是CSS CSS&#xff08;Cascading Style Sheets&#xff09;是一种用于描述文档样式和布局的样式表语言&#xff0c;用于美化和排版HTML和XML等标记语言的内容。 1.2 CSS的作用和优势 CSS的主要作用是控制网页的样式和布局&#xff0c;包括字体、颜色、间…...

一周学会Django5 Python Web开发-Django5创建项目(用PyCharm工具)

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计11条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…...

寒假学习记录13:JS对象

目录 对象转数组 对象双值转数组 Object.entries() &#xff08;转为二维数组&#xff09;&#xff08;属性的值和键&#xff09; 对象右值转数组 Object.values() &#xff08;属性的值&#xff09; 对象左值转数组 Object.keys() (属性的键) 对象左值转…...

学生成绩管理系统|基于Springboot的学生成绩管理系统设计与实现(源码+数据库+文档)

学生成绩管理系统目录 目录 基于Springboot的学生成绩管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员功能模块 2、学生功能模块 3、教师功能模块 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源…...

C#向数组指定索引位置插入新的元素值:自定义插入方法 vs List<T>.Add(T) 方法

目录 一、使用的方法 1.自定义插入方法 2.使用List.Add(T) 方法 二、实例 1.示例1&#xff1a;List.Add(T) 方法 2.示例&#xff1a;自定义插入方法 一、使用的方法 1.自定义插入方法 首先需要定义一个一维数组&#xff0c;然后修改数组的长度(这里使用Length属性获取…...

【大数据Hive】hive 表设计常用优化策略

目录 一、前言 二、hive 普通表查询原理 2.1 操作演示说明 2.1.1 创建一张表&#xff0c;并加载数据 2.1.2 统计3月24号的登录人数 2.1.3 查询原理过程总结 2.2 普通表结构带来的问题 三、hive分区表设计 3.1 区表结构 - 分区设计思想 3.2 操作演示 3.2.1 创建分区表…...

jvm垃圾收集器之七种武器

目录 1.回收算法 1.1 标记-清除算法(Mark-Sweep) 1.2 复制算法(Copying) 1.3 标记-整理算法(Mark-Compact) 2.HotSpot虚拟机的垃圾收集器 2.1 新生代的收集器 Serial 收集器&#xff08;复制算法&#xff09; ParNew 收集器 (复制算法) Parallel Scavenge 收集器 (复制…...

STM32面试相关问题

STM32面试相关问题&#xff1a; STM32的内核型号&#xff0c;主频&#xff0c;传感器和单片机总线类型&#xff0c;IIC,SPI,RS485UART数据帧项目中一些参数的设置 STM32 系统移植 ARM编译 常用的驱动编写方式 自己写过哪些方面驱动 其实如果问32的问题&#xff0c…...

风行智能电视N39S、N40 强制刷机升级方法,附刷机升级数据MstarUpgrade.bin

升级步骤&#xff1a; 1、下载刷机数据&#xff0c;如是压缩包&#xff0c;需要先解压&#xff0c;然后将刷机bin格式的文件重命名为MstarUpgrade.bin 2、将此文件放到U盘根目录 &#xff08;U盘格式FAT32&#xff0c;单分区&#xff0c;建议4G的优盘刷机成功率高&#xff09;…...

【C语言】简易英语词典

文章目录 一、定义英语单词信息的结构体二、主函数功能逻辑三、查单词函数四、背单词函数五、补充 一、定义英语单词信息的结构体 添加必要的头文件、宏定义和声明&#xff0c;之后定义英语单词信息结构体。 /* 头文件和宏定义 */ #include <stdio.h> #include <std…...

【算法题】104. 二叉树的最大深度

题目 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3 示例 2&#xff1a; 输入&#xff1a;root [1,nul…...

Docker配置Portainer容器管理界面

目录 一、Portainer 简介 优点&#xff1a; 缺点&#xff1a; 二、环境配置 1. 拉取镜像 2. 创建启动容器 三、操作测试 1. 进入容器 2. 拉取镜像并部署 3. 访问测试 一、Portainer 简介 Portainer 是一个开源的轻量级容器管理界面&#xff0c;用于管理 Docker 容器…...

Linux network namespace 访问外网以及多命名空间通信(经典容器组网 veth pair + bridge 模式认知)

写在前面 整理K8s网络相关笔记博文内容涉及 Linux network namespace 访问外网方案 Demo实际上也就是 经典容器组网 veth pair bridge 模式理解不足小伙伴帮忙指正 不必太纠结于当下&#xff0c;也不必太忧虑未来&#xff0c;当你经历过一些事情的时候&#xff0c;眼前的风景已…...

网络渗透测试:Wireshark抓取qq图片

Wireshark Wireshark Downloadhttps://www.wireshark.org/download.html 简介 WireShark是非常流行的网络封包分析工具&#xff0c;可以截取各种网络数据包&#xff0c;并显示数据包详细信息。常用于开发测试过程中各种问题定位。本文主要内容包括&#xff1a; 1、Wireshar…...

网络协议与攻击模拟_16HTTP协议

1、HTTP协议结构 2、在Windows server去搭建web扫描器 3、分析HTTP协议流量 一、HTTP协议 1、概念 HTTP&#xff08;超文本传输协议&#xff09;用于在万维网服务器上传输超文本&#xff08;HTML&#xff09;到本地浏览器的传输协议 基于TCP/IP(HTML文件、图片、查询结构等&…...

叙事弧基础

原文&#xff1a;MasterClass. 2020. Learn About Narrative Arcs: Definition, Examples, and How to Create a Narrative Arc in Your Writing - 2021. https://www.masterclass.com/articles/what-are-the-elements-of-a-narrative-arc-and-how-do-you-create-one-in-writin…...

python从入门到精通(二十):python的exe程序打包制作

python的exe程序打包制作 python打包的概念python打包的模块导入模块安装验证基本语法命令参数文件夹模式单文件模式资源嵌入exe更改图标启动画面&#xff08;闪屏&#xff09;禁用异常提示 python打包的概念 将普通的*.py程序文件打包成exe文件。exe文件即可执行文件&#xf…...

three.js 细一万倍教程 从入门到精通(一)

目录 一、three.js开发环境搭建 1.1、使用parcel搭建开发环境 1.2、使用three.js渲染第一个场景和物体 1.3、轨道控制器查看物体 二、three.js辅助设置 2.1、添加坐标轴辅助器 2.2、设置物体移动 2.3、物体的缩放与旋转 缩放 旋转 2.4、应用requestAnimationFrame …...

别再乱接线了!手把手教你用SC-09电缆搞定三菱FX2N PLC通讯(附GX Developer配置)

三菱FX2N PLC通讯实战&#xff1a;SC-09电缆的正确打开方式 第一次接触三菱FX2N PLC时&#xff0c;很多人都会被通讯问题难住。那些看似简单的接线背后藏着不少门道——用错线序可能导致通讯失败&#xff0c;甚至损坏设备。本文将带你避开常见陷阱&#xff0c;从硬件连接到软件…...

【从零学Vibe Coding】第一章:Vibe Coding 到底是什么?

第一章&#xff1a;Vibe Coding 到底是什么&#xff1f; 先说结论 Vibe Coding 不是"不写代码"&#xff0c;而是"先用自然语言描述意图&#xff0c;再让 AI 生成代码&#xff0c;人类负责判断、修正和推进结果"。 这个词在 2025 年突然出圈&#xff0c;不…...

保姆级教程:在ROS2 Humble上,用Orbbec Astra Pro深度相机搞定单目标定(附常见镜像问题解决)

保姆级教程&#xff1a;ROS2 Humble与Orbbec Astra Pro深度相机单目标定实战指南 深度相机在机器人视觉、三维重建等领域扮演着关键角色&#xff0c;而精确的相机标定则是确保数据可靠性的第一步。本文将手把手带你完成Orbbec Astra Pro在ROS2 Humble环境下的单目标定全流程&am…...

2026年六大主流AI变声器软件排名推荐!

随着AI语音技术持续迭代升级&#xff0c;AI变声器不再是单一的娱乐工具&#xff0c;广泛应用于游戏开黑、直播互动、短视频配音、音频创作、隐私语音沟通等多个场景。目前市面上变声软件品类繁杂&#xff0c;涵盖移动端、PC端、免费开源、专业付费等不同类型&#xff0c;普通用…...

告别踩坑!2024年最新版Petalinux 2022.1在Ubuntu 22.04上的保姆级安装与项目创建指南

2024终极指南&#xff1a;Ubuntu 22.04完美运行Petalinux 2022.1全流程解析 当Xilinx Zynq系列芯片遇上现代Ubuntu系统&#xff0c;版本兼容性问题往往成为开发者第一道门槛。本文将带您穿越依赖地狱&#xff0c;在Ubuntu 22.04上构建稳定的Petalinux 2022.1开发环境&#xff0…...

别再只会用现成镜像了!手把手教你用Diskimage-builder从零打造专属OpenStack镜像(Ubuntu 22.04实战)

从零构建OpenStack定制镜像&#xff1a;Diskimage-builder深度实践指南 为什么需要定制镜像&#xff1f; 在OpenStack云环境中&#xff0c;标准镜像就像未经调味的食材——虽然能用&#xff0c;但远不能满足专业需求。想象一下&#xff0c;每次创建实例后都要重复安装Python环境…...

代码随想录算法训练营第六十天|Bellman_ford 队列优化算法、Bellman_ford之判断负权回路、bellman_ford之单源有限最短路

参考文章均来自代码随想录 Bellman_ford 队列优化算法 参考文章链接 对第 59天中的题目进行优化 详细见参考文章推理步骤 还是用邻接表 #include <iostream> #include <vector> #include <queue> #include <list> #include <climits> using …...

Claude Code 配置手册

验证已经安装node和npmnode -v npm -v如果显示版本号且 ≥ 18.0.0&#xff0c;则说明安装成功安装CLInpm i -g anthropic-ai/claude-codelatest npm i -g openai/codexlatest npm i -g google/gemini-clilatest根目录下新建 settings.json 配置文件vim ~/.claude/settings.json…...

Nmap - Zenmap GUI工具

1、Nmap - Zenmap GUI工具1&#xff09;设备和电脑在同一局域网内&#xff0c;输入设备ip&#xff0c;点击Scan&#xff08;本地web接口安全&#xff09;...

# 040、实战项目五:多 Agent 协作系统 —— 项目经理、开发者、测试者角色模拟

从一次凌晨三点的事故说起 去年做智能客服系统重构&#xff0c;我犯了个低级错误——让单个Agent既写代码又自测。结果上线当天&#xff0c;它把“用户退款”的SQL写成了DELETE FROM orders WHERE status‘refund’&#xff0c;还自信满满地标注“测试通过”。凌晨三点被运维电…...