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

CF1111A Superhero Transformation

CF1111A Superhero Transformation


题目描述

我们都知道超级英雄可以变身为某些其他超级英雄。但并不是所有超级英雄都能变身为任意其他超级英雄。一个名字为 \(s\) 的超级英雄可以变身为另一个名字为 \(t\) 的超级英雄,当且仅当通过将 \(s\) 中的任意元音字母变为任意其他元音字母,以及将任意辅音字母变为任意其他辅音字母,可以使 \(s\) 变为 \(t\)。可以进行多次更改。

在本题中,字母 'a'、'e'、'i'、'o' 和 'u' 被视为元音字母,其余所有字母均为辅音字母。

给定两个超级英雄的名字,判断名字为 \(s\) 的超级英雄是否可以变身为名字为 \(t\) 的超级英雄。


输入格式

第一行包含字符串 \(s\),长度在 \(1\)\(1000\) 之间(包含 \(1\)\(1000\))。

第二行包含字符串 \(t\),长度在 \(1\)\(1000\) 之间(包含 \(1\)\(1000\))。

保证 \(s\)\(t\) 不相同,且均由小写英文字母组成。


输出格式

如果名字为 \(s\) 的超级英雄可以变身为名字为 \(t\) 的超级英雄,输出 "Yes"(不带引号);否则输出 "No"(不带引号)。

输出时字母大小写均可。


思路

  1. 先比较长度,如果两个字符串长度不一样,那就不用修改
  1. 再比较串 s 和串 t 同一位置的字母是否都是元音或辅音字母

AC代码

#include <bits/stdc++.h>
using namespace std;bool ok(char c)
{return c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u';
}
signed main()
{ios::sync_with_stdio(false);cin.tie(0);string s, t;cin >> s >> t;if (s.size() != t.size()){cout << "No\n";return 0;}for (int i = 0; i < s.size(); i++){bool ss = ok(s[i]), tt = ok(t[i]);if (ss != tt){cout << "No\n";return 0;}}cout << "Yes\n";return 0;
}
http://www.hskmm.com/?act=detail&tid=39136

相关文章:

  • 前缀和
  • string 库常用函数
  • VC项目引用dll文件的方法
  • XCPC英语学习day1
  • maths 库常用函数
  • sys 库常用函数
  • os 库常用函数
  • 练习篇:密码学基础
  • [AI应用开发平台] Coze:AI应用开发平台
  • 『语文随笔』孤独之旅,魔幻之境——马尔克斯传
  • npuctf_2020_easyheap----off-by-one
  • 251025B. 海啸
  • 用户上下文透传机制详解
  • 品牌故事不会写?这个AI指令可能帮你解决大问题
  • WebSocket
  • JWT令牌
  • 电梯调度编程结对项目总结
  • GuessGame两个版本的区别
  • 第二次作业--田佳吉
  • 电脑频繁卡顿?4个CMD命令揪出后台隐藏进程
  • 2025_软件工程师课程辅导
  • Graphiti:为智能体构建实时知识图谱,引领更聪明的 AI 时代
  • 《《《es相关
  • 人资新手必看,企业绩效的意义
  • 题解:P14309 【MX-S8-T2】配对
  • HuggingFace 库使用小技巧
  • 启动分布式mapreduce的过程以及prompt
  • 【ArcMap】复制选中的线并将其上移一段距离
  • 题解:AT_apc001_h Generalized Insertion Sort
  • 记一次thinkphp3.2项目迁移失败的原因。 is currently unable to handle this request. HTTP ERROR 500