1 条题解
-
0
C++ :
#include<bits/stdc++.h> using namespace std; string upper(string s){ int i; for(i = 0;i < s.size();i++){ if(s.at(i) >= 'a' && s.at(i) <= 'z'){ s[i] = s[i] - 32; } } return s; } int main(){ string s,r,t; int i; getline(cin,s); bool f = true;//代表处于正常拷贝状态 //循环将s中有效的内容放入r中 for(i = 0;i < s.size();i++){ if(s[i] == '('){ f = false;//开始拷贝缩写 t = "";//t用来放缩写,先初始化为空的 continue;//开始的(不拷贝 }else if(s[i] == ')'){ f = true;//缩写结束 t = upper(t); r = r + t; continue;//结束的)不拷贝 } //如果是正常状态 if(f == true){ r = r + s[i]; }else{ //首字母 if(s[i - 1] == ' ' || s[i - 1] == '('){ t = t + s[i]; } } } cout<<r<<endl; }
Python :
b=input() y1=0 a=b.split() for i in a: if '(' in i: y1=1 if y1==0: print(i,end=" ") else: en=i[len(i)-1] if '(' in i: print(chr(ord(i[1])-32),end='') else: print(chr(ord(i[0])-32),end='') if en==',' or en=='.': print(en,end=' ') elif en==')': print('',end=' ') if ')' in i: y1=0
- 1
信息
- ID
- 2187
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者