博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
z字形扫描
阅读量:4286 次
发布时间:2019-05-27

本文共 1397 字,大约阅读时间需要 4 分钟。

问题描述

试题编号: 201412-2
试题名称: Z字形扫描
时间限制: 2.0s
内存限制: 256.0MB
问题描述:
问题描述
  在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示:

  对于下面的4×4的矩阵,

  1 5 3 9
  3 7 5 6
  9 4 6 4
  7 3 1 3
  对其进行Z字形扫描后得到长度为16的序列:
  1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3
  请实现一个Z字形扫描的程序,给定一个n×n的矩阵,输出对这个矩阵进行Z字形扫描的结果。
输入格式
  输入的第一行包含一个整数n,表示矩阵的大小。
  输入的第二行到第n+1行每行包含n个正整数,由空格分隔,表示给定的矩阵。
输出格式
  输出一行,包含n×n个整数,由空格分隔,表示输入的矩阵经过Z字形扫描后的结果。
样例输入
4
1 5 3 9
3 7 5 6
9 4 6 4
7 3 1 3
样例输出
1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3
评测用例规模与约定
  1≤n≤500,矩阵元素为不超过1000的正整数。
以n=4为例,依次写出矩阵的坐标,
sum=0:(0,0)
sum=1:(0,1) (1,0)
sum=2: (2,0) (1,1)(0,2)
sum=3:(0,3)(1,2)(2,1)(3,0)
sum=4:(3,1)(2,2)(1,3)
sum=5:(2,3)(3,2)
sum=6:(3,3)
总结规律,sum

#include 
//#include
using namespace std;int main(){ int n,i,j,k,t,sum; int flag=0; cin>>n; int a[510][510]; for(i=0;i
>t; a[i][j]=t; } } for(sum=0;sum
=0&&j
=0&&i
0&&j
0&&i

以上是按自己思路所写代码,粘贴一个网上程序,规律相同,做题思路有借鉴之处

#include
#include
#include
#include
#include
#include
using namespace std;#define size 500int map[size+5][size+5];int main(){ int n; int i,j; cin>>n; for(i=1;i<=n;i++){ for(j=1;j<=n;j++){ cin>>map[i][j]; } } //int sum=3; //f=1,e=2; int nn=2*n; //bool b=true;//e减 f增 int a=1,b=2; cout<
1){ cout<<" "<
1){ cout<<" "<

转载地址:http://spxgi.baihongyu.com/

你可能感兴趣的文章
QT水费管理系统 ——纯C++开发
查看>>
PHP调用科大讯飞语音服务
查看>>
mui.ajax使用注意事项
查看>>
repo简介
查看>>
父类指针访问子类私有对象
查看>>
Windows CMD.exe 系统找不到指定的路径
查看>>
SpringBoot电商项目实战 — 商品的SPU/SKU实现
查看>>
SpringBoot电商项目实战 — ElasticSearch接入实现
查看>>
精选的10款Java开源项目,建议收藏
查看>>
Zookeeper+dubbo分布式开发学习(一)
查看>>
JAVA微信扫码支付及微信App支付开发(模式二)完整功能实现
查看>>
Could not parse multipart servlet request; nested exception is java.io.IOException
查看>>
Java面试题汇总---基础版(附答案)
查看>>
Java面试题汇总---升级版(附答案)
查看>>
分布式文件系统之FastDFS文件服务器原理及搭建
查看>>
linux系统中安装mysql详解
查看>>
Java开发者应该养成的良好习惯
查看>>
微信小程序支付+Java后台实现(完整版)
查看>>
Spring Boot实现分布式微服务开发实战系列(一)
查看>>
Spring Boot实现分布式微服务电商项目开发实战系列(二)
查看>>