rt,一大堆话没写上去
建议根据其他题解补充上去
顺便问一句哪错了
#include<bits/stdc++.h>
using namespace std;
int main()
{
string st;
while(cin>>st){
bool a=0,b=0,ok=0;
if(st[0]=='_'||(st[0]>='A'&&st[0]<='Z')||st[st.size()-1]=='_')ok=1;
for(int i=0;i<st.size();i++){
if(st[i]==st[i+1]&&st[i]=='_')ok=1;
if(st[i]=='_'&&st[i+1]>='a'&&st[i+1]<='z')a=1;
if(st[i]>='A'&&st[i]<='Z'&&st[i-1]!='_'&&i!=st.size()-1)b=1;
}
if(a&&b||ok){
cout<<"Error!";
return 0;
}
for(int i=0;i<st.size();i++)
if(st[i]=='_')
if(st[i+1]>='A'&&st[i+1]<='Z'){
cout<<"Error!";
return 0;
}
for(int i=0;i<st.size();i++){
if(st[i]>='A'&&st[i]<='Z')cout<<'_'<<char(tolower(st[i]));
else if(st[i-1]=='_')cout<<char(toupper(st[i]));
else if(st[i]!='_')cout<<st[i];
}
puts("");
}
}