难度:easy
Java:
思路:遍历一遍s,然后统计;
class Solution {
public int[] numberOfLines(int[] widths, String s) {
int len = s.length();
int[] ans = {1, 0};
int eachWidth = 100;
int sum = 0;
for (int i = 0; i < len; i++) {
if (sum + widths[s.charAt(i) - 'a'] <= 100) {
sum += widths[s.charAt(i) - 'a'];
} else {
sum = 0;
ans[0]++;
i--;
}
}
ans[1] = sum;
return ans;
}
}
复杂度分析:
- 时间复杂度:O(n)
- 空间复杂度:O(1)