今天在整理组会汇报材料,没心思写题,随机挑一个简单题意思意思算了。
思路:
代码:
class Solution {
public int countCharacters(String[] words, String chars) {
int[] cnt = new int[26];
for (char ch : chars.toCharArray()){
cnt[ch-'a']++;
}
int ans = 0;
for (String str : words){
int[] copy = Arrays.copyOf(cnt,cnt.length);
boolean flag = false;
for (char ch : str.toCharArray()){
if (copy[ch-'a']>0){
copy[ch-'a']--;
}else {
flag = true;
break;
}
}
if (!flag){
ans+=str.length();
}
}
return ans;
}
}
用时与题解对比: