Submission

Status:

[-SSSSSSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: C12

Problemset: การจัดแนวข้อความ

Language: cpp

Time: 0.004 second

Submitted On: 2026-01-04 01:14:11

#include <bits/stdc++.h>
using namespace std;

#define f first
#define s second
#define pii pair<ll,ll>
#define puii pair<ull,ull>
#define piii pair<ll,pii>
#define ll long long
#define ull unsigned long long
#define mp make_pair
 
#define mpiii(a,b,c) make_pair(a,make_pair(b,c));
// ll mod = 1000000007;

void solve(){
    int n,m;

    cin >> n >> m;

    vector<string>v;
    vector<ll>len;

    string st;

    ll start,end,spacebar;
    ll i = 0,j = 0;

    for(int i = 0;i < n;i++){
        cin >> st;

        cout << st;
        cout << '\n';

        v.push_back(st);
        if(i > 0){
            len.push_back(len[len.size() - 1] + st.length());
        }
        else{
            len.push_back(st.length());
        }
    }

    return;

    while(i < n){
        while(j < n && (len[j] - len[i] + v[i].size()) + (j- i) <= m){
            j++;
        }

        // cout << j << ' ' << i << '\n';
        j--;
        while(j-i > 0 && (m - (len[j] - len[i] + v[i].size())) % (j-i) != 0){
            j--;
        }
        // cout << j << ' ' << i << '\n';

        if(j-i > 0){
            spacebar = (m - (len[j] - len[i] + v[i].size())) / (j-i);
        }
        else{
            spacebar = (m - (len[j] - len[i] + v[i].size()));
        }

        for(int k = i;k <= j;k++){
            cout << v[k];
            for(int p = 0;p < spacebar;p++){
                cout << ' ';
            }
        }
        cout << '\n';

        i = j + 1;
    }

    
    return;
}
int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll q;
 
    // cin >> q;

    // while(q--)
        solve(); 

    return 0;
}

/*
7 16
This is an example of text justification.

6 16
What must be acknowledgement shall be
*/