zoukankan      html  css  js  c++  java
  • (水题)蛇形矩阵

    1160 蛇形矩阵

     时间限制: 1 s
     空间限制: 128000 KB
     题目等级 : 白银 Silver
     
     
    题目描述 Description

    小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和.

    输入描述 Input Description

    n(即n行n列)

    输出描述 Output Description

    n+1行,n行为组成的矩阵,最后一行为对角线数字之和

    样例输入 Sample Input

    3

    样例输出 Sample Output

    5 4 3
    6 1 2
    7 8 9
    25

    数学太渣没推出来。。只能模拟做的。还debug好久。。。

    思路就是从二维数组里最后一个数往里面转,也可以反着来。。

    代码:

     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<iostream>
     4 #define e 1e-8
     5 #include<cmath>
     6 using namespace std;
     7 int main()
     8 {
     9     int n;
    10     int a[100][100];
    11     memset(a,0,sizeof(a));
    12     scanf("%d",&n);
    13     int s=n*n,i=n-1,j=n-1;
    14     while(s>0)
    15     {
    16         while(j>=0&&!a[i][j])a[i][j--]=s--;
    17         j++;
    18         i--;
    19         while(i>=0&&!a[i][j])a[i--][j]=s--;
    20         i++;
    21         j++;
    22         while(j<n&&!a[i][j])a[i][j++]=s--;
    23         j--;
    24         i++;
    25         while(i<n&&!a[i][j])a[i++][j]=s--;
    26         i--;
    27         j--;
    28     }
    29     int k,l;
    30     for(k=0; k<n; k++)
    31     {
    32         for(l=0; l<n-1; l++)
    33             printf("%d ",a[k][l]);
    34         printf("%d
    ",a[k][l]);
    35     }
    36     int ans=0;
    37     i=j=0;
    38     for(int x=0; x<n; x++)
    39         ans+=a[i++][j++];
    40     i=0;j=n-1;
    41     for(int y=0;y<n;y++)
    42         ans+=a[i++][j--];
    43         printf("%d
    ",ans-a[n/2][n/2]);
    44     return 0;
    45 }
    View Code
    随便写写。一点学习心得。。。--如果本文章没有注明转载则为原创文章,可以随意复制发表,但请注明出处与作者
  • 相关阅读:
    使用PDO连接数据库
    ES6 promise
    弹框小三角
    封装弹窗功能
    css3 省略号
    使mac支持NTFS读写问题
    Vue 打包 build 前需要修改哪些配置和路径
    eslint配置大全
    在elementUI中使用 el-autocomplete 实现远程搜索的下拉框
    element-UI table自定义表头
  • 原文地址:https://www.cnblogs.com/ganhang-acm/p/4165978.html
Copyright © 2011-2022 走看看