SRM 373 DIV1 Easy - StringFragmentation

問題


http://community.topcoder.com/stat?c=problem_statement&pm=8087&rd=10791

解き方


全探索可能なので解くだけ。

コード


class StringFragmentation {

public: int largestFontSize(string text, int width, int height) {
vector<int> vx;
stringstream out(text);
for(string str;out>>str;){
vx.push_back(str.size());
}

int n=vx.size();
for(int i=5000;i>=8;i--){
int at=0,lines=0;
while(at<n){
int cur=0;
if(vx[at]*(i+2)<=width){
cur+=vx[at]*(i+2);
}else break;

while(at+1<n && cur+(vx[at+1]+1)*(i+2)<=width){
cur+=(vx[at+1]+1)*(i+2);
at++;
}
lines++;
at++;
}
if(at>=n && lines*2*i<=height)return i;
}

return -1;
}
}

Share this

Related Posts