B3674 [语言月赛202210] 标题修改 题解

· · 题解

B3674 [语言月赛202210] 标题修改

Source & Knowledge

2022 年 10 月语言月赛,由洛谷网校入门计划/基础计划提供。

本题考察对字符串的应用。

文字题解

题目大意

给定由多个单词组成的字符串,将每个单词的第奇数个字母改成大写,第偶数个字母改成小写,输出修改后的字符串。

解析

本题最大的难点在于提取出字符串并将其转换大小写。

提取字符串这一步,直接枚举即可,不再赘述。

将字符串 s 转换大小写,可以将 i0\text{s.length()-1} 作循环,判断该位是奇位还是偶位,然后对应地转换大小写。

核心代码:

if((i + 1) % 2 == 1 && k[i] >= 'a' && k[i] <= 'z') 
    k[i] = k[i] - 'a' + 'A';
if((i + 1) % 2 == 0 && k[i] >= 'A' && k[i] <= 'Z') 
    k[i] = k[i] - 'A' + 'a';

注意事项:

视频题解

完整代码见视频题解。