Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <unordered_map>#include <vector>using namespace std;int main(void){int n, m;cin >> n >> m;vector<int> nums;string s;while(cin >> s) {nums.push_back(1);nums.push_back(s.size());}unordered_map<int, int> ydict, xdict;int x = 0, y = 0;for (int i = 1; i < nums.size(); ++i) {int num = nums[i];if (y == 0)++x;if (y + num <= m)y += num;else {y = num;++x;}if (y >= m)y -= m;}