专栏文章
题解:P1319 压缩技术
P1319题解参与者 10已保存评论 10
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 10 条
- 当前快照
- 1 份
- 快照标识符
- @mip4zuyb
- 此快照首次捕获于
- 2025/12/03 06:15 3 个月前
- 此快照最后确认于
- 2025/12/03 06:15 3 个月前
题目分析
我们需要根据给定的压缩码还原出原始的 的 01 点阵图案。压缩码的第一个数字是 ,后续数字交替表示连续的 0 和 1 的个数。
解决思路
根据数字序列交替填充 0 和 1,第一个数字表示连续的 0 的个数,第二个数字表示连续的 1 的个数,依此类推。
此思路需要双重循环,时间复杂度为 ,可以接受。
代码实现
CPP#include <bits/stdc++.h>
using namespace std;
int n,sum,cnt,ct,ans;
int main(){
cin>>n;
sum=n*n;
while(ans<sum){
cin>>ct;
for(int i=0;i<ct;i++){
cout<<cnt;
ans++;
if(ans%n==0){
cout<<endl;
}
}
cnt=1-cnt;// 切换 0 和 1。
}
return 0;
}
相关推荐
评论
共 10 条评论,欢迎与作者交流。
正在加载评论...