zoukankan      html  css  js  c++  java
  • NetEase YouDao 矩阵问题

    1.打印蛇形矩阵

    刚刚写了一下这道题,主要是控制循环语句,思路清晰了代码自然就漂亮了。

    View Code
     1 #include<iostream>
    2 using namespace std;
    3
    4 #define N 5
    5 int a[N][N];
    6
    7 int main()
    8 {
    9 int num=0;
    10 bool flag=true; //flag控制添斜线的上下的方式,每次打印完一个斜线改变一下
    11 for(int slopline=0; slopline<=N-1; ++slopline) //slopline控制斜线,总共打印2N-1个斜线,这是打印左上半个矩阵
    12 {
    13 if(flag) //
    14 {
    15 for(int row=0,col=slopline; col>=0; ++row,--col) //具体打印每个斜线
    16 a[row][col]=++num;
    17 flag=!flag;
    18 }
    19 else //
    20 {
    21 for(int row=slopline,col=0; row>=0; --row,++col)
    22 a[row][col]=++num;
    23 flag=!flag;
    24 }
    25 }
    26
    27 for(int slopline=N; slopline<=2*N-2; ++slopline) //打印右下半个矩阵
    28 {
    29 if(flag)
    30 {
    31 for(int row=slopline-N+1,col=N-1; row<=N-1; ++row,--col)
    32 a[row][col]=++num;
    33 flag=!flag;
    34 }
    35 else
    36 {
    37 for(int row=N-1,col=slopline-N+1; col<=N-1; --row,++col)
    38 a[row][col]=++num;
    39 flag=!flag;
    40 }
    41 }
    42
    43 for(int i=0; i<N; ++i)
    44 {
    45 for(int j=0; j<N; ++j)
    46 cout<<a[i][j]<<" ";
    47 cout<<endl;
    48 }
    49 }

    2.网易有道笔试题。

    打印如下形式的矩阵;

    n=5:
    1   2   9 10 25
    4   3   8 11 24
    5   6   7 12 23
    16 15 14 13 22
    17 18 19 20 21

    n=6:
    1   2   9 10 25 26
    4   3   8 11 24 27
    5   6   7 12 23 28
    16 15 14 13 22 29
    17 18 19 20 21 30
    36 35 34 33 32 31

     

    代码暂时没写,待续。。。

     

  • 相关阅读:
    Novell 被收购
    NetBeans IDE 7.0 Beta 发布
    关于去除PE文件中函数修饰的做法
    甲骨文宣布将于明年 7 月 28 日推 JDK 7
    PE文件格式的一些研究
    如何开发 Web 应用程序
    Novell 被收购
    如何开发 Web 应用程序
    分享:DFC开发平台的设计理念
    分享:FireBreath 1.7.0 RC1 发布
  • 原文地址:https://www.cnblogs.com/YipWingTim/p/2213799.html
Copyright © 2011-2022 走看看