代码
为了避免在判断0 1过程中还要换行,所以我把每一行的字符串拼接在了一起;需要注意的是如果第一个字符是’1’的话,也就是’0’的个数为0,这个0也需要输出。
#include<bits/stdc++.h>
using namespace std;
int main(){
int i,n,cnt=1;
string a,s;
cin>>a;
s=a;
n=a.length();
for(i=1;i<n;i++){
cin>>a;
s+=a;
}
cout<<n;
for(i=0;i<n*n;i++){
if(i==0&&s[i]=='1') cout<<" 0";
if(s[i]==s[i+1]){
cnt++;
}else{
cout<<" "<<cnt;
cnt=1;
}
}
return 0;
}