📄 sgu409.java
字号:
import java.io.*;
import java.util.*;
public class Solution implements Runnable {
Scanner in;
PrintWriter out;
int n, K;
char block[][][][];
private char[][] Down(char curr[][]) {
char res[][] = new char[n][n];
int i, j;
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
res[i][j] = curr[(i + n - 1) % n][j];
return res;
}
private char[][] Right(char curr[][]) {
char res[][] = new char[n][n];
int i, j;
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
res[i][j] = curr[i][(j + n - 1) % n];
return res;
}
private void Solve() {
n = in.nextInt();
K = in.nextInt();
block = new char[n][n][][];
int i, j;
block[0][0] = new char[n][n];
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
block[0][0][i][j] = i * n + j < K ? '*' : '.';
for (i = 1; i < n; i++)
block[i][0] = Right(block[i - 1][0]);
for (i = 0; i < n; i++)
for (j = 1; j < n; j++)
block[i][j] = Down(block[i][j - 1]);
for (i = 0; i < n * n; i++) {
for (j = 0; j < n * n; j++)
out.print(block[i / n][j / n][i % n][j % n]);
out.println();
}
}
public void run() {
try {
in = new Scanner(new FileReader("input.txt"));
out = new PrintWriter(System.out);
while (in.hasNextInt())
Solve();
in.close();
out.close();
}
catch (Exception ex) {
ex.printStackTrace();
System.exit(-1);
}
}
public static void main(String args[]) {
new Thread(new Solution()).start();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -