题解:P1320 压缩技术(续集版)
前言:
又是一道水题,太好了。
思路:
首先,这道题和 p1319 思路几乎一模一样,不知道的自己去看。于是呢,我们可以将那道题反着来做一下。仔细观察题目,不难发现这道题就是输入一个压缩了以后的图片,然后让我们输出这张图片的边长为几。然后,交替输出 0 和 1 的个数,这道题就结束了。
于是,我们可以使用一个 while 循环,来计算边长为多少。然后,再用
My AC Code:
#include <bits/stdc++.h>
using namespace std;
int main(){
string dzt[200];
int n = 0;
while(cin>>dzt[n]) n++;
cout<<n<<' ';
char ysm='0';
int js=0;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(dzt[i][j]==ysm)
js++;
else{
cout<<js<<' ';
ysm=(ysm=='0')?'1':'0';
js=1;
}
}
}
cout<<js;
return 0;
}
每天一题解,红名靠近我。