本题给了我们一个字符串,代表一个表情,其中使用中括号括起来的为这个表情的拼音,使用驼峰统计法,大写的为其首字母,简写为斜线加上小写的表情拼音首字母。
首先在前面输出一个斜线,我们使用两个变量 l 和 r,来记录中括号是否出现,一开始我们将它定义为零,如果出现左中括号,将 l 设为一,如果出现右中括号,将 r 设为一,结束循环,中括号里的大写字母为其中的拼音首字母,所以我们要只统计中括号里面的,也就是当 l==1&&r==0 时,我们要统计大写字母,如果出现大写字母,我们要先转小写再输出。
#include <bits/stdc++.h>
using namespace std;
int main(){
string a;
cin >> a;
int l=0,r=0;
if(a.size()!=0){//先输出斜线
cout << "/";
}
for(int i=0;i<a.size();i++){
if(a[i]=='['&&l==0){
l=1;
}
if(a[i]==']'&&r==0){
r=1;//没用
break;
}
if(a[i]<='Z'&&a[i]>='A'&&l==1&&r==0){//判断是否为大写,是否在中括号里。
cout << char(a[i]+32);//输出小写
}
}
return 0;
}