Giới thiệu
Bạn có thể biết và yêu vòng tròn đơn vị bình thường của bạn. Nhưng các nhà toán học là điên rồ và do đó họ đã trừu tượng hóa khái niệm này đến bất kỳ điểm nào thỏa mãn x*x+y*y=1
. Bởi vì Tiền điện tử 1 cũng kỳ lạ, họ yêu thích các trường hữu hạn và đôi khi là các vòng hữu hạn (mặc dù không có nhiều sự lựa chọn), vì vậy hãy kết hợp điều này!
Các thách thức
Đầu vào
Một số nguyên dương lớn hơn một trong mã hóa yêu thích của bạn. Hãy gọi số này là n.
Đầu ra
Bạn sẽ xuất "hình ảnh" (bao gồm n lần n ký tự) của vòng tròn đơn vị modulo số nguyên đầu vào là ASCII-Art bằng cách sử dụng "X" (chữ hoa chữ thường chữ X) và "" (dấu cách). Không gian lưu trữ và dòng mới được cho phép.
Thêm chi tiết
Bạn phải mở rộng một hệ tọa độ từ dưới cùng bên trái sang trên cùng bên phải. Bất cứ khi nào một điểm hoàn thành phương trình đường tròn, đặt X tại vị trí, nếu không thì đặt một khoảng trắng.
Điều kiện để một điểm được coi là một phần của đường viền vòng tròn là :
mod(x*x+y*y,n)==1
.
Dưới đây là một minh họa nhanh về hệ tọa độ:
(0,4)(1,4)(2,4)(3,4)(4,4)
(0,3)(1,3)(2,3)(3,3)(4,3)
(0,2)(1,2)(2,2)(3,2)(4,2)
(0,1)(1,1)(2,1)(3,1)(4,1)
(0,0)(1,0)(2,0)(3,0)(4,0)
Nếu nó giúp bạn, bạn cũng có thể đảo ngược hướng của bất kỳ trục nào, nhưng các ví dụ giả định hướng này.
Ai thắng?
Đây là mã golf, vì vậy mã ngắn nhất trong byte sẽ thắng! Chỉ cho phép các phương thức I / O mặc định và tất cả các sơ hở tiêu chuẩn đều bị cấm.
Ví dụ
Đầu vào: 2
X
X
Đầu vào: 3
X
X
XX
Đầu vào: 5
X
X
X X
Đầu vào: 7
X
X X
X X
X
X X
Đầu vào: 11
X
XX
X X
X X
XX
X
X X
Đầu vào: 42
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
1 Tôi đề nghị bạn hãy xem hồ sơ của tôi nếu bạn đang tự hỏi ở đây.