当前位置: 首页 > news >正文

西部数码网站管理助手错误著名的营销成功的案例

西部数码网站管理助手错误,著名的营销成功的案例,公司在网站做广告怎么做分录,app试玩网站制作第34次认证第一题——矩阵重塑(其一) 官网链接 时间限制: 1.0 秒 空间限制: 512 MiB 相关文件: 题目目录(样例文件) 题目背景 矩阵(二维)的重塑(reshap…

第34次认证第一题——矩阵重塑(其一) 

官网链接

时间限制: 1.0 秒

空间限制: 512 MiB

相关文件: 题目目录(样例文件)

题目背景

矩阵(二维)的重塑(reshape)操作是指改变矩阵的行数和列数,同时保持矩阵中元素的总数不变。

题目描述

矩阵的重塑操作可以具体定义为以下步骤:

设原矩阵为 𝑀M,其维度为 n×m,即有 n 行和 m 列。新矩阵为 M′,其维度为 p×q。重塑操作要满足 n×m=p×q,这保证了元素的总数不变。

  1. 线性化原矩阵:按照行优先的顺序,将原矩阵 M 的元素转换成一个长度为 n×m 的一维数组 A。这意味着你先读取 M 的第 0 行元素,然后是第 1 行,依此类推,直到最后一行。

  2. 填充新矩阵:使用一维数组 A 中的元素按照行优先的顺序填充新矩阵 M′。首先填充 M′ 的第 0 行,直到该行有 q 个元素,然后继续填充第 1 行,直到所有 p 行都被填满。

给定原矩阵中的一个元素的位置 (i,j)(0≤i<n 且 0≤j<m),我们可以找到这个元素在被线性化后的一维数组 A 中的位置 k(0≤k<n×m),然后确定它在新矩阵 M′ 中的位置 (i′,j′)(0≤i′<p 且 0≤j<q)。它们之间满足如下数学关系:i×m+j=k=i′×q+j′

给定 n×m 的矩阵 𝑀M 和目标形状 p、q,试将 M 重塑为 p×q 的矩阵 M′。

输入格式

从标准输入读入数据。

输入共 n+1 行。

输入的第一行包含四个正整数 n、m 和 p、q。

接下来依次输入原矩阵 M 的第 0 到第 n−1 行,每行包含 m 个整数,按列下标从 0 到 m−1 的顺序依次给出。

输出格式

输出到标准输出。

输出共 p 行,每行 q 个整数,表示重塑后的矩阵 M′。输出格式与输入相同,即依次输出 M′ 的第 0 行到第 p−1 行;行内按列下标从 0 到 q−1 的顺序输出,且两个整数间仅用一个空格分隔。

样例1输入

2 3 3 2
1 2 3
4 5 6

样例1输出

1 2
3 4
5 6

样例2输入

2 2 1 4
6 6
6 6

样例2输出

6 6 6 6

子任务

全部的测试数据满足:

  • n、m 和 p、q 均为正整数且 n×m=p×q≤104;

  • 输入矩阵中每个元素的绝对值不超过 1000。

提示

评测环境仅提供各语言的标准库,特别地,不提供任何线性代数库(如 numpypytorch 等)。

语言和编译选项

#名称编译器额外参数代码长度限制
0g++g++-O2 -DONLINE_JUDGE65536 B
1gccgcc-O2 -DONLINE_JUDGE65536 B
2javajavac65536 B
3python3python365536 B

参考题解

#include<iostream>
#include<vector>
#include<cstring>
using namespace std;int main(){int row1, col1, row2, col2;cin >> row1 >> col1 >> row2 >> col2;int data[row1 * col1];memset(data, 0, sizeof(data));for(int i = 0; i < row1 * col1; i++){cin >> data[i];}
//	int result[row2][col2];----------不需要用数组存结果,直接输出就好了
/*-----!!还可以进一步优化空间效率,不需要将数据读入数组,直接边读入边输出即可(不过这个是对于考试来说,自己调试的话不太方便看结果) for(int i = 0; i < row2; i++){for(int j = 0; j < col2; j++){int value;cin >> value;cout << value << " ";}cout << endl;}-----------------------*/	 
//	memset(result, 0, sizeof(result));int index = 0;for(int i = 0; i < row2; i++){for(int j = 0; j < col2; j++){cout << data[index] << " ";index++;}cout << endl;}return 0;
}

优化后

完成矩阵重塑(其二)后受到的优化启发

矩阵重塑(其二)​​​​​​​

#include <iostream>
#include <vector>using namespace std;int main () {int n1, m1, n2, m2;
//	cin >> n1 >> m1 >> n2 >> m2;scanf("%d%d%d%d", &n1, &m1, &n2, &m2); //不能用%D,没有定义这种行为,虽然不会报错,但是赋值并未成功 vector<int> data (n1 * m1);for (int i = 0; i < n1 * m1; i++) {
//		cin >> data[i];scanf("%d", &data[i]);}for (int i = 0; i < n2; i++) {for (int j = 0; j < m2; j++) {
//			cout << data [i * m2 + j] << " ";printf("%d ", data [i * m2 + j]);}
//		cout << "\n";printf("\n");}return 0;
}

小结

本题较为简单,用时10分钟左右,不过不知道还有没有小坑,重点是无需存储直接输出的思想,可以提高效率。

一般来说第一题较简单,可以先看输入输出,看不明白再去看题目。

http://www.hengruixuexiao.com/news/30198.html

相关文章:

  • 大学生水果预定配送网站建设的项目规划书百度惠生活推广怎么收费
  • 天河网站建设公司怎样做自己的网站
  • 52麻将官方网站做代理百度指数查询官网大数据
  • 太原市网站制作全国疫情最新报告
  • 网站建设维护是做什么会计科目百度下载老版本
  • 哪个网站做课件ppt比较好百家号关键词排名
  • 青州做网站的电话seo营销培训
  • wordpress备份网站百度广告管家
  • 做游戏出租的网站营业推广的目标通常是
  • 新网站制作市场sem扫描电镜
  • 做网站的好公司有哪些公司市场营销策划方案
  • 购买网站空间ftp设计baud百度一下
  • 宁波创建网站阿里大数据官网
  • 成都旅游网站系统优化软件推荐
  • 2017网站建设网络广告推广服务
  • macrome怎么做网站软文推广文章范文
  • 峨眉住房和城乡建设委员会网站百度seo优化方法
  • 做美食软件视频网站有哪些seo搜索引擎优化是通过优化答案
  • 家具展示网站源码西安计算机培训机构排名前十
  • 各大搜索引擎网站登录入口宁波品牌网站推广优化
  • 网站架构 seo舆情分析报告模板
  • 洛阳做网站的中国新闻今日头条
  • 舌尖上的西安 网站怎么做seo费用
  • 网站制作怎样盈利起飞页自助建站平台
  • 上海网站建设电话百度seo排名优
  • 用vs做网站怎么插入标签重庆seo
  • 网站建设 宜昌电商网站入口
  • 好用的ppt模板免费下载网站东莞谷歌推广
  • 网站app搭建天津seo管理平台
  • 宁波专业网站推广制作服务短视频seo厂家