题目要求:按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345678“,”90000000”
#include<iostream>
#include<iomanip>
#include <stdio.h>
#include <string.h>
#include <list>
#include <vector>
#include <cstdio>
#include <stack>
#include <queue>
#include <sstream>
using namespace std;
int main()
{
int M, N;
cin >> M >> N;
vector<string> strs;
for (int i = 0; i < M; i++)
{
string s;
cin>>s;
strs.push_back(s);
}
for (int i = 0; i < strs.size(); i++)
{
string s = strs[i];
int slen = s.length();
if (slen <= N)
{
for (int j = 0; j < slen; j++)
{
cout << s[j];
}
for (int k = 0; k < N - slen; k++)
{
cout << "0";
}
cout << endl;
}
else
{
int num_sy = slen%N;
int num_zero = N - num_sy;
for (int x = 0; x < num_zero; x++)
{
s.append("0");
}
for (int y = 0; y < s.length(); y++)
{
if (y%N == 0)
{
cout << endl;
}
cout << s[y];
}
}
}
return 0;
}