803D

来源:互联网 发布:caxa数控车床编程视频 编辑:程序博客网 时间:2024/06/06 01:39
#include<iostream>#include<vector>#include<string>#include<set>#include<map>#include<algorithm>#include<queue>#include<list>#include<stack>#include<cstdio>#include<fstream>#include<numeric>#include<functional>#include<utility>#include<memory>using namespace std;using namespace placeholders;bool used(int length, string s, int k){int count_sub = 0;for (int i = 0; i < s.size();){int amount = 0;bool flag = false;int index, j;for (j = i; j < s.size() && amount < length; j++){if (s[j] == ' ' || s[j] == '-'){flag = true;index = j;}amount++;}if (flag){count_sub++;if (j == s.size()) i = j;else i = index + 1;}else{if (j == s.size()){i = j;count_sub++;}else{return false;}}}if (count_sub > k) return false;else return true;}int main(){int k;while (cin >> k){getchar();string s;getline(cin, s);int start = 0;int end = s.size();while (start <= end){int mid = (start + end) / 2;if (!used(mid, s, k)){start = mid + 1;}else{end = mid - 1;}}cout << start << endl;}return 0;}

0 0
原创粉丝点击