Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner in = new Scanner(System.in);
- int N = in.nextInt();
- if (N == 2 || N <= 0) {
- System.out.println("Not exist");
- return;
- }
- if (N % 2 == 0) {
- System.out.println("Exist, but very hard to calculate");
- return;
- }
- int L = N * 2 - 1;
- int step = (N - 1) / 2;
- int matrix[][] = new int[L][L];
- for (int i = 0; i < L; i++) {
- for (int j = 0; j < L; j++) {
- matrix[i][j] = 0;
- }
- }
- for (int i = 0, counter = 1; i < N; i++) {
- for (int j = 0, dx = 0; j < N; j++, dx++) {
- matrix[i + dx][j + N - 1 - i] = counter;
- counter += 1;
- }
- }
- for (int i = 0; i < L; i++) {
- for (int j = 0; j < step; j++) {
- if (matrix[i][j] != 0)
- matrix[i][N + j] = matrix[i][j];
- if (matrix[j][i] != 0)
- matrix[N + j][i] = matrix[j][i];
- }
- for (int j = L - 1; j > L - step - 1; j--) {
- if (matrix[i][j] != 0)
- matrix[i][j - N] = matrix[i][j];;
- if (matrix[j][i] != 0)
- matrix[j - N][i] = matrix[j][i];
- }
- }
- for (int i = step; i < L - step; i++) {
- for (int j = step; j < L - step; j++) {
- System.out.print(matrix[i][j] + "\t");
- }
- System.out.println("");
- }
- }
- }
Add Comment
Please, Sign In to add comment