PTIT006 - Ma trận xoắn ốc 1

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Nhiệm vụ của bạn là tạo ra ma trận xoắn ốc với kích thước ~n x n~ cho trước

Input

Một dòng duy nhất chứa số ~n~ ~(1 \le n \le 50)~

Output

Một ma trận xoắn ốc kích thước ~n x n~, xem ví dụ dưới để rõ thêm

Sample

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

Problem source: CLB Lập Trình PTIT


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    2vhoc7  đã bình luận lúc 19, Tháng 4, 2024, 17:07

    from math import *

    import numpy as np #type: ignore

    from collections import Counter import re

    if name == 'main': n = int(input()) a = [[0]n for _ in range(n)] num =1 t = 0 b = n-1 r = n-1 l = 0 while(num <= n*2): for i in range(l, r+1): a[t][i] = num num+=1 t+=1 for i in range(t, b+1): a[i][r] = num num+=1 r-=1 for i in range(r, l-1, -1): a[b][i] = num num+=1 b-=1 for i in range(b, t-1, -1): a[i][l] = num num+=1 l+=1

    for i in range(n):
        for j in range(n):
            print(a[i][j], end=' ')
        print()
    

  • -2
    LongvnXD  đã bình luận lúc 6, Tháng 11, 2023, 15:30

    bài này hay