Submission

Status:

[-SSSSSSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: faofao

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

Language: cpp

Time: 0.002 second

Submitted On: 2026-03-13 20:09:51

#include <bits/stdc++.h>
using namespace std;
#define ll long long
queue<string> q ;

int main(){
    ios::sync_with_stdio(0),cin.tie(0) ;
    int n,m ; cin >> n >> m  ;
    for(int i=0 ; i<n ; i++){
        string s ; cin >> s ;
        q.push(s) ;
    }

    while(!q.empty()){
        int tmp=m;
        queue<string> v ;
        while(!q.empty() && q.front().length() <=tmp){
            v.push(q.front()) ;
            tmp-=(q.front().length()+1) ;
            q.pop() ;
        }
        // while(!v.empty()){
        //     cout << v.front() << " " ;
        //     v.pop() ;
        // }
        // cout << "***\n" ;
        tmp+=1 ;
        int add =0;
        int spc = (tmp)/v.size() ;
        if(v.size()>1){
            add = tmp/(v.size()-1) ;
        }
        // cout << tmp << " " << v.size() << " " << spc << " " ;
        // cout << add << " " ;
        if(q.empty()){
            while(!v.empty()){
                cout << v.front();
                v.pop() ;
                if(!v.empty()) cout << " " ;
            }
        }
        while(!v.empty()){
            cout << v.front();
            v.pop() ;
            if(v.empty()) break ;
            cout << " " ;
            for(int i=0 ; i<spc ; i++) cout << " " ;
            if(add>0){
                cout << " " ;
                add-- ;
            }
        }
        cout << "\n" ;
    }
}