晓君c++ 2024-04-25 21:15 采纳率: 70%
浏览 6
已结题

矩阵的空间旋转c++

描述
输入一个n行m列的整数矩阵(2 <= n <= 10,2 <= m <= 10),以其中线为准,顺时针空间旋转180度,再将旋转后的矩阵顺时针平面旋转90度,请按照要求输出旋转过后的整数矩阵
输入描述
第一行,两个数据n和m,空格隔开(2<=n<=10,2<=m<=10),n行m列
第二行到第n+1行为一个待旋转的整数矩阵
输出描述
输出为一个旋转过后的整数矩阵
样例输入 1
3 3
1 2 3
4 5 6
7 8 9
样例输出 1
9 6 3
8 5 2
7 4 1

  • 写回答

3条回答 默认 最新

  • 檀越@新空间 2024-04-25 21:15
    关注

    晚上好🌙🌙🌙
    本答案参考ChatGPT-3.5

    问题分析:该问题需要对一个矩阵进行空间旋转和平面旋转,可以采取将其转换为一个二维数组然后进行操作。

    解决方案: 1.首先,输入待旋转的整数矩阵,并将其存入一个二维数组中。 2.将矩阵按照其中线为准进行顺时针空间旋转180度,可以采取使用两个指针p1和p2,分别指向二维数组的第一行和最后一行,然后交换它们指向的值,接着p1向下移动一行,p2向上移动一行,如此不断交换直至相遇。 3.然后,将旋转后的矩阵顺时针平面旋转90度。这可以通过先将矩阵转置,然后将每一行翻转得到旋转后的矩阵。 4.最后,输出旋转过后的整数矩阵。

    修改后的C++代码如下:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月3日
  • 已采纳回答 4月25日
  • 创建了问题 4月25日