对于今天的挑战,您必须编写一个可替换字符串大小写的程序或函数。但是,您必须忽略非字母字符。这意味着每个字母字符必须有一个不同的情况下,比前面和下面的字母字符。例如,这比每隔一个字母大写更复杂。如果您使用诸如
hello world
并将所有其他字符转换为大写,您将获得:
hElLo wOrLd
如您所见,小写字母o
后面是小写字母w
。这是无效的。相反,您必须忽略空格,从而得到以下结果:
hElLo WoRlD
所有非字母字符必须保持相同。只要输出始终交替,输出就可以以大写或小写开头。这意味着以下内容也是可接受的输出:
HeLlO wOrLd
不管输入大小写如何,您的程序都应该可以工作。
输入字符串将只包含可打印的ASCII,因此您不必担心不可打印的字符,换行符或unicode。您的提交可以是完整程序,也可以是函数,并且您可以采用任何合理的格式进行输入和输出。例如,函数自变量/返回值,STDIN / STDOUT,读/写文件等。
例子:
ASCII -> AsCiI
42 -> 42
#include <iostream> -> #InClUdE <iOsTrEaM>
LEAVE_my_symbols#!#&^%_ALONE!!! -> lEaVe_My_SyMbOlS#!#&^%_aLoNe!!!
PPCG Rocks!!! For realz. -> PpCg RoCkS!!! fOr ReAlZ.
This example will start with lowercase -> tHiS eXaMpLe WiLl StArT wItH lOwErCaSe
This example will start with uppercase -> ThIs ExAmPlE wIlL sTaRt WiTh UpPeRcAsE
A1B2 -> A1b2
由于这是代码高尔夫,因此会出现标准漏洞,并且以字节为单位的最短答案会成功!
cowsay