华为OD机考2025B卷 - 差值数组不同的字符串(Java & Python& JS & C++ & C )

最新华为OD机试

真题目录:点击查看目录
华为OD面试真题精选:点击立即查看
2025华为od 机试2025B卷-华为机考OD2025年B卷

题目描述

给你一个字符串数组 words ,每一个字符串长度都相同,令所有字符串的长度都为 n

每个字符串 words[i] 可以被转化为一个长度为 n - 1差值整数数组 difference[i] ,其中对于 0 <= j <= n - 2difference[i][j] = words[i][j+1] - words[i][j] 。注意两个字母的差值定义为它们在字母表中 位置 之差,也就是说 'a' 的位置是 0'b' 的位置是 1'z' 的位置是 25

  • 比方说,字符串 "acb" 的差值整数数组是 [2 - 0, 1 - 2] = [2, -1]

words 中所有字符串 除了一个字符串以外 ,其他字符串的差值整数数组都相同。你需要找到那个不同的字符串。

输出 words差值整数数组 不同的字符串。

输入描述

第一行输入一个字符串,包含两个数字,空格分隔,数组长度m和数字n,n表示字符串的长度

第二行输入一个字符串,m个长度为n的字符串,空格分隔

备注

  • 3 <= n <= 100
### 华为OD机考题库 E 字符串比较相关试题 #### 题目描述 给定两个字符串 `str1` 和 `str2`,编写一个函数来判断这两个字符串是否相等。如果相等返回 true;如果不相等则返回 false。 注意: - 比较时不区分大小写。 - 如果任意输入为空,则认为不相等。 #### 示例代码实现 ```cpp #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; bool areStringsEqual(const string&amp; str1, const string&amp; str2) { if (str1.empty() || str2.empty()) { return false; } // 将两个字符串转换成小写字母形式再做对比 string lowerStr1 = str1; string lowerStr2 = str2; transform(lowerStr1.begin(), lowerStr1.end(), lowerStr1.begin(), ::tolower); transform(lowerStr2.begin(), lowerStr2.end(), lowerStr2.begin(), ::tolower); return lowerStr1 == lowerStr2; } int main(){ cout &lt;&lt; boolalpha; // 输出布尔值而不是0/1 // 测试案例 cout &lt;&lt; &quot;Test Case 1: &quot; &lt;&lt; areStringsEqual(&quot;Hello&quot;, &quot;hello&quot;) &lt;&lt; endl; // 应该输出true cout &lt;&lt; &quot;Test Case 2: &quot; &lt;&lt; areStringsEqual(&quot;&quot;, &quot;&quot;) &lt;&lt; endl; // 取决于具体定义,这里按要求应输出false cout &lt;&lt; &quot;Test Case 3: &quot; &lt;&lt; areStringsEqual(&quot;World!&quot;, &quot;world!&quot;) &lt;&lt; endl; // 应该输出true cout &lt;&lt; &quot;Test Case 4: &quot; &lt;&lt; areStringsEqual(&quot;Example&quot;, &quot;example &quot;) &lt;&lt; endl; // 应该输出false } ``` 此段程序实现了基本功能并考虑到了一些特殊情况处理[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

算法大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值