专栏文章
题解:P1319 压缩技术
P1319题解参与者 3已保存评论 4
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @mip4zmwt
- 此快照首次捕获于
- 2025/12/03 06:15 3 个月前
- 此快照最后确认于
- 2025/12/03 06:15 3 个月前
本题大意
要求根据给定的一组压缩数据还原一个 的 矩阵。压缩数据的格式是交替给出连续 和 的个数,第一个数字表示连续 的个数,第二个数字表示连续 的个数,以此类推。
思路
首先读取矩阵的边长 。使用一个循环不断读取压缩数据中的数字 ,使用 变量来标记当前应该输出 还是 ( 表示输出 , 表示输出 )。对于每个数字 ,连续输出 个 或 ,在输出过程中,每输出 个字符就换行。并使用 变量记录已输出的总字符数,当 达到 时停止。
本题代码
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,a;
int endll,id=0,s;
signed main(){
cin>>n;
while(s<n*n){
cin>>a;
if(id==0){
for(int i=1;i<=a;i++){
if(endll==n){
cout<<endl;
endll=0;
}
cout<<"0";
endll++;
s++;
}
}else{
for(int i=1;i<=a;i++){
if(endll==n){
cout<<endl;
endll=0;
}
cout<<"1";
endll++;
s++;
}
}
id++;
id%=2;
}
return 0;
}
相关推荐
评论
共 4 条评论,欢迎与作者交流。
正在加载评论...