https://leetcode.com/problems/license-key-formatting/#/description
生成一个序列号,原始字符串包括大写小写字母和数字以及“-”,要求从后往前按照K位分割,分隔符为“-”,第一部分可以不满K个
从后往前遍历,当前sb长度 % K + 1 == K时,说明应该加一个分隔符
public class Solution {
public String licenseKeyFormatting(String S, int K) {
StringBuilder sb = new StringBuilder();
for (int i = S.length() - 1; i >= 0; i--) {
if (S.charAt(i) != '-') {
sb.append(sb.length() % (K + 1) == K ? '-' : "").append(S.charAt(i));
}
}
return sb.reverse().toString().toUpperCase();
}
}