首页 > 试题广场 > 提取优惠券码
[编程题]提取优惠券码

携程客户下单的时候系统会发放一个优惠券码,用户在前端界面看到的展现形式如下:“1Ct3r4ip_ti4C6k9Et^”,包含数字、字母、和 [\]^_ 6个特殊字符。

为了安全性,系统在使用的时候做解密操作,删除里面的数字部分,只验字母A~z以及[\]^_ 6个特殊字符部分才是有效的,并且在解密后不会重新排序字母的顺序,按照之前的对应顺序排列。

如上所示,如果一个客户拿到的优惠券码是这个:1Ct3r4ip_ti4C6k9Et^  , 请用java语言提取正确的优惠券码。


输入描述:
1Ct3r4ip_ti4C6k9Et^


输出描述:

Ctrip_tiCkEt^

示例1

输入

1Ct3r4ip_ti4C6k9Et^

输出

Ctrip_tiCkEt^
#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s;
    cin>>s;
    for(int i=0;i<s.size();i++)
    {
        if(isdigit(s[i]))
            s.erase(s.begin()+i);
        else if(s[i]=='$')
            s[i]='^';
        else
            continue;
    }
    cout<<s<<endl;
    return 0;
}

发表于 2019-08-16 23:22:48 回复(0)
python版的答案
c_str = '1Ct3r4ip_ti4C6k9Et^'     #c_str表示客户输入的字符串
new_str = ''     # new_str表示去掉数字的字符串
for i in c_str:      # 遍历字符串
    if not i.isdigit():   #判断是否为数字
        new_str += i
print(new_str)
发表于 2019-08-18 16:42:52 回复(0)
这个用例确定没错??????我怎么一脸懵逼呀$没有说要变^呀
发表于 2019-08-13 18:53:11 回复(2)