现在有 nn 个字符串,其中包含一些空格,现在希望你将所有字符串中的空格删除后输出。
输入格式
输入的第一行只有一个正整数 nn ,表示共有 nn 个字符串。
第二行至第 n+1n+1 行共 nn 行,每行是一个字符串(由大小写英文字母和空格组成)。
输出格式
输出有 n+1n+1 行,第一行只有一个正整数,表示总共删除的空格数。第二行至第 n+1n+1 行共 nn 行,每行表示一个删除空格后的字符串(按照输入顺序)。
数据范围
对于 100\%100% 的数据,1 \leq n \leq 100001≤n≤10000,每行字符串的长度不超过 100100。
输出时每行末尾的多余空格,不影响答案正确性
注意:getchar()的正确使用;
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
const int maxa=1e4+10;
int n;
char a[maxa][maxa];
int ans=0;
void cnt(){
for(int i=0;i<n;i++)
for(int j=0;j<strlen(a[i]);j++)
if(a[i][j]==' ') ans++;
cout<<ans<<endl;
}
void print(){
for(int i=0;i<n;i++)
for(int j=0;j<strlen(a[i]);j++){
if(a[i][j]!=' ') printf("%c",a[i][j]);
if(j==strlen(a[i])-1) printf("\n");
}
}
int main(){
cin>>n;
getchar();
for(int i=0;i<n;i++){
gets(a[i]);
}
cnt();
print();
return 0;
}