Submission
Status:
PPPPP
Score: 100
User: Sense143
Problemset: ชั้นหนังสือ
Language: cpp
Time: 0.015 second
Submitted On: 2024-09-25 14:24:24
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;
int main(){
ios::sync_with_stdio(false); cin.tie(0);
int n,m; cin >> n >> m;
int sum = 0;
vector<string> s;
for(int i=0;i<m;i++){
int temp; cin >> temp;
string v; cin >> v;
for(int j=0;j<temp;j++){
s.push_back(v);
}
sum += temp;
}
for(int i=0;i<=sum*2;i++){
if(i%2 == 0){
cout << '+';
}
else{
cout << '-';
}
}
cout << endl;
sort(s.begin(), s.end());
for(int i=0;i<s.size();i++){
if(i%2 == 1){
reverse(s[i].begin(), s[i].end());
}
}
for(int i=0;i<n;i++){
for(int j=0;j<sum;j++){
if(j%2 == 0){
cout << '|';
if(i >= s[j].size()){
cout << '.';
}
else{
cout << s[j][i];
}
}
else{
cout << '|';
if(i < n - s[j].size()){
cout << '.';
}
else{
cout << s[j][i - n + s[j].size()];
}
}
if(j == sum-1){
cout << '|';
}
}
cout << endl;
}
for(int i=0;i<=sum*2;i++){
if(i%2 == 0){
cout << '+';
}
else{
cout << '-';
}
}
}