博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二维数组旋转45度
阅读量:6583 次
发布时间:2019-06-24

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

//#pragma comment(linker, "/STACK:1024000000,1024000000")#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define CL(arr, val) memset(arr, val, sizeof(arr))#define lc l,m,rt<<1#define rc m + 1,r,rt<<1|1#define pi acos(-1.0)#define ll long long#define L(x) (x) << 1#define R(x) (x) << 1 | 1#define MID(l, r) (l + r) >> 1#define Min(x, y) (x) < (y) ? (x) : (y)#define Max(x, y) (x) < (y) ? (y) : (x)#define E(x) (1 << (x))#define iabs(x) (x) < 0 ? -(x) : (x)#define OUT(x) printf("%I64d\n", x)#define keyTree (chd[chd[root][1]][0])#define Read() freopen("din.txt", "r", stdin)#define Write() freopen("dout.txt", "w", stdout);#define M 100007#define N 107using namespace std;int dx[4]={-1,1,0,0};int dy[4]={0,0,-1,1};const int inf = 0x7f7f7f7f;const int mod = 1000000007;const double eps = 1e-8;const int R = 100007;int a[N][N];vector
b[2*N];int main(){ int cnt = 0; int n ; cin >> n; for (int i = 0; i < 2*n - 1; ++i) b[i].clear(); for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { a[i][j] = cnt++; } } for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { printf("%d ",a[i][j]); } printf("\n"); } for (int i = 0; i < n; ++i) { for (int j = 0; j <= i; ++j) { //b[i][j] = a[j][i - j]; b[i].push_back(a[j][i - j]); } } //输出三角的旋转// for (int i = 0; i < n; ++i)// {// for (int j = 0; j <= i; ++j)// {// printf("%d ",b[i][j]);// }// printf("\n");// } for (int i = n,rnum = n - 1; i < 2*n - 1; ++i,rnum--) { for (int j = 0; j < rnum; j++) { //b[i][j] = a[i - n + 1 + j][n - 1 - j]; b[i].push_back(a[i - n + 1 + j][n - 1 - j]); } } printf(">>>>>>\n"); for (int i = 0; i < 2*n - 1; ++i) { for (size_t j = 0; j < b[i].size(); ++j) { printf("%02d ",b[i][j]); } printf("\n"); }}

  

还是这个比较简单:

for (int i = 0; i < 2*n - 1; ++i)    {        for (int j = 0; j < n; ++j)        {            if (i - j < 0 || i - j >= n) continue;            b[i].push_back(a[j][i - j]);        }    }

  

 

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

你可能感兴趣的文章
控制namenode检查点发生的频率
查看>>
2、递归遍历文件夹下每一个文件
查看>>
Remove auto_increment from Schema Dumps (mysqld...
查看>>
解决activity加上Theme.Translucent.NoTitleBar 页面跳转显示桌面
查看>>
php类库
查看>>
浅谈Java中的对象和引用
查看>>
SQL 注入自我总结
查看>>
Linux线程
查看>>
Exchange Server 2013 系列八:邮箱服务器角色DAG实战
查看>>
一个有趣的命令
查看>>
已发布13集网站开发技术视频:http://blog.sina.com.cn/s/blog_67d27f340102vf7l.html
查看>>
Mysql ibdata 丢失或损坏如何通过frm&ibd 恢复数据
查看>>
MySQL数据库的优化(二)
查看>>
Deepin OS和WIN7双启动 花屏原因一例
查看>>
UIMenuController—为UITextField禁用UIMenuController功能
查看>>
Protobuf使用不当导致的程序内存上涨问题
查看>>
【原创】扯淡的Centos systemd与Docker冲突问题
查看>>
Spring+Mybatis多数据库的配置
查看>>
给大家推荐一个免费下载名称读写ntfs软件的地方
查看>>
在MySQL数据库建立多对多的数据表关系
查看>>