原文链接:力扣
思路:看一下题目给的数据范围,直接暴力遍历即可,注意考虑最后的一行刚好写满100的边界情况。
class Solution {
public:
vector<int> numberOfLines(vector<int>& widths, string s) {
int tmp=100;
int ans1=0;
for(int i=0;i<s.length();i++)
{
if(tmp-widths[s[i]-'a']<0)
{
ans1++;
i--;
tmp=100;
}
else if(tmp-widths[s[i]-'a']==0)
{
ans1++;
tmp=100;
}
else tmp=tmp-widths[s[i]-'a'];
}
if(tmp!=100) ans1++;
if(tmp==100) tmp=0;
vector<int> q;
q.push_back(ans1);
q.push_back(100-tmp);
return q;
}
};