1. Description
Given a string and an integer k, format the string so that each group contains exactly k characters, except for the first group.
2. Solution
倒着模拟这个过程,注意最开始会不会出现dash。
3. Code
string licenseKeyFormatting(string S, int K) {
string ans;
int n = S.size();
int cnt = 0;
for(int i=n-1;i>=0;i--){
if(cnt==K){
ans='-'+ans;
cnt=0;
}
if(S[i]=='-')
continue;
else{
if(S[i]>='a'&&S[i]<='z')
ans=char(S[i]-'a'+'A')+ans;
else
ans=S[i]+ans;
cnt++;
}
}
if(ans.size()>0 && ans[0]=='-') return ans.substr(1);
else
return ans;
}