📅  最后修改于: 2023-12-03 15:37:13.833000             🧑  作者: Mango
ISRO (Indian Space Research Organization, 印度空间研究组织) 是印度的宇航局,成立于1969年,总部位于班加罗尔。ISRO 主要负责印度的太空科技发展和探索任务。
ISRO CS 2007 是 ISRO 公司于2007年招聘计算机工程师时设定的笔试题目。问题 69 是其中之一,需要求解一个字符串问题。
给定一个字符串 s
,将其按照下列规则转换:
例如,输入字符串为 "RoUtE 11 To 12", 则输出字符串为 "rOUtEtO".
我们可以先编写一个辅助函数,用于将一个字符按照上述规则进行转换。然后,对于输入字符串中的每一个字符,都调用该辅助函数进行转换,并将转换后的结果拼接起来得到最终输出字符串。
代码如下:
def convert_char(c):
if c.isdigit():
return '*'
elif c.isupper():
return c.lower()
elif c.islower():
return c.upper()
elif c == ' ':
return ''
else:
return c
def convert_string(s):
return ''.join(convert_char(c) for c in s)
# 测试
assert convert_string("RoUtE 11 To 12") == "rOUtE**tO**"
# 国际空间研究组织 | ISRO CS 2007 | 问题 69
## 介绍
ISRO (Indian Space Research Organization, 印度空间研究组织) 是印度的宇航局,成立于1969年,总部位于班加罗尔。ISRO 主要负责印度的太空科技发展和探索任务。
ISRO CS 2007 是 ISRO 公司于2007年招聘计算机工程师时设定的笔试题目。问题 69 是其中之一,需要求解一个字符串问题。
## 问题描述
给定一个字符串 `s`,将其按照下列规则转换:
1. 将连续出现的每个数字替换为 '*';
2. 将字符串中的每个大写字母转换为相应的小写字母;
3. 将字符串中的每个小写字母转换为相应的大写字母;
4. 将字符串中的空格删除。
例如,输入字符串为 "RoUtE 11 To 12", 则输出字符串为 "rOUtE**tO**".
## 解决方案
我们可以先编写一个辅助函数,用于将一个字符按照上述规则进行转换。然后,对于输入字符串中的每一个字符,都调用该辅助函数进行转换,并将转换后的结果拼接起来得到最终输出字符串。
代码如下:
```python
def convert_char(c):
if c.isdigit():
return '*'
elif c.isupper():
return c.lower()
elif c.islower():
return c.upper()
elif c == ' ':
return ''
else:
return c
def convert_string(s):
return ''.join(convert_char(c) for c in s)
# 测试
assert convert_string("RoUtE 11 To 12") == "rOUtE**tO**"