zoukankan      html  css  js  c++  java
  • ocrosoft Contest1316

    http://acm.ocrosoft.com/problem.php?cid=1316&pid=15

    题目描述

    编程打印如下规律的n*n方阵。输入n,按规律输出方阵。
    方阵规律如下图:使左对角线和右对角线上的元素为0,它们上方的元素为1,左方的元素为2,下方元素为3,右方元素为4,下图是一个符合条件的5阶矩阵。
                             0  1  1  1  0
                             2  0  1  0  4
                             2  2  0  4  4
                             2  0  3  0  4
                             0  3  3  3  0

    输入

    正整数n(<=100)。

    输出

    所需的方阵。

    样例输入

    5

    样例输出

    0 1 1 1 0
    2 0 1 0 4
    2 2 0 4 4
    2 0 3 0 4
    0 3 3 3 0

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    
    int N;
    int maze[110][110];
    
    int main() {
        scanf("%d", &N);
        memset(maze, 0, sizeof(maze));
        for(int i = 1; i <= N; i ++) {
            for(int j = 1; j <= N; j ++) {
                if(i != j && i + j != N + 1) {
                    if(i < j) {
                        if(i + j < N + 1)
                            maze[i][j] = 1;
                        else
                            maze[i][j] = 4;
                    } else {
                        if(i + j < N + 1)
                            maze[i][j] = 2;
                        else
                            maze[i][j] = 3;
                    }
                }
            }
        }
    
        for(int i = 1; i <= N; i ++) {
            for(int j = 1; j <= N; j ++) {
                if(j != N)
                    printf("%d ", maze[i][j]);
                else
                    printf("%d
    ", maze[i][j]);
            }
        }
        return 0;
    }
    

      

  • 相关阅读:
    IllegalStateException
    TimeUnit简析
    Cron表达式
    任务调度之Timer与TimerTask配合
    Executor简析
    this逃逸
    SQL、SQL Server、MySQL与Oracle
    数据库与实例
    vw 、vh、vmin 、vmax
    逻辑(内存)分页与物理分页
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/9728611.html
Copyright © 2011-2022 走看看