规范变量名

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

Description

在软件开发过程中,高规范的变量命名能够让变量的用途和含义直观易懂,显著降低代码的阅读、调试、维护成本,同时减少因变量含义模糊引发的逻辑错误,是提升代码可维护性和团队协作效率的基础。

常用的命名方法包括:

  • 驼峰(Camel):单词之间没有分隔符,第一个单词首字母小写,其余单词首字母大写,其余字母小写,例如commandList

  • 帕斯卡(Pascal):单词之间没有分隔符,所有单词首字母大写,其余字母小写,例如CommandList

  • 下划线(Snake):单词之间用下划线“_”分隔,所有字母小写,例如command_list

Orange在Github上与其他人合作开发一个项目,每个人都具备良好的软件工程素养,保证所有的变量名都符合三种常用命名方法。但是,由于每个人开发习惯的不同,在进行开发时,所有人都偏好使用自己习惯的命名方法。这导致该项目中可能同时存在驼峰,帕斯卡,下划线这三种命名方法。这非常不优雅。于是,Orange决定规范所有变量的命名方法。

你需要写一个程序,把所有的变量名规范成指定的命名方法。

Format

Input

输入第一行包含一个整数 nn 和一个字符串 pp,分别表示变量总数和指定的命名方法。

接下来 nn 行,每行一个字符串 ss,表示一个变量名。

数据范围

1n1031 \le n \le 10^3 s100|s| \le 100 $p \in \{\text{Camel}, \text{Pascal}, \text{Snake}\}$

保证单词不会有连续的大写字母。

Output

对于每个输入的字符串 ss,输出将其转化成指定的命名方法的新变量名。

Samples

4 Snake
userName
Password
background_color
text
user_name
password
background_color
text

2026年沈阳师范大学团体程序设计天梯赛-校内选拔赛

未参加
状态
已结束
规则
IOI
题目
15
开始于
2026-3-7 9:00
结束于
2026-3-7 12:00
持续时间
3 小时
主持人
参赛人数
40