1. 程式人生 > >CCF NOI1046. 列印方陣 (C++)

CCF NOI1046. 列印方陣 (C++)

1046. 列印方陣

題目描述

列印一個n*n的數字方陣,例如n=4時:(n<=100)
1 3 4 10
2 5 9 11
6 8 12 15
7 13 14 16

輸入

輸入n。

輸出

輸出n*n的方陣。

樣例輸入

4

樣例輸出

1 3 4 10
2 5 9 11
6 8 12 15
7 13 14 16

資料範圍限制

C++程式碼

#include <iostream>

using namespace std;

const int N = 100;

int main()
{
    int Matrix[
N][N]; int n; cin >> n; int number = 1; int row, col; for(int k=2; k<=2*n; k++) { for(col=1; col<=n; col++) { for(row=1; row<=n; row++) { if (row+col == k) { if (k>=
4 && k%2 == 0) { Matrix[col-1][row-1] = number++; } else { Matrix[row-1][col-1] = number++; } } } } } for
(int row=1; row<=n; row++) { for(int col=1; col<=n; col++) { cout << Matrix[row-1][col-1] << " "; } cout << endl; } return 0; }