简单模拟题(某金融公司面试题)
Input&Output:
输入N,在控制台上输出初始边长为N的图案
测试样例:
输入:10

输入:7

思路:观察打印图形总结出如下规律(以N=10为例):
1.从(0,0)坐标开始横向往右打印10个*
2.从(1,9)开始纵向往下打印9个*
3.从(10,9)开始横向往左打印8个*
4.从(8,1)开始纵向往上打印7个*
5.安装1-4步骤循环执行,知道打印一个*
Java实现如下:
public class DrawMap {
/**
* 输入N,螺旋打印N边正方形
* @param
*/
public static void draw(int n ) {
boolean[][] flag = new boolean[n+1][n+1];
int t = 0;
int x = 0,y = 0;
for (int c = n; c > 0; c--) {
if (t%4 == 0) { //横着往前画->
int num = 0;
while (num < c) {
flag[x][y + num] =

这是一道简单的模拟题,常见于金融公司的面试中。题目要求根据输入的N值,在控制台输出一个初始边长为N的螺旋形正方形图案。通过观察可以发现打印规律,然后用Java进行实现。例如,当N为10时,打印过程分为多个步骤,按照特定路径进行*号的输出。
最低0.47元/天 解锁文章
718

被折叠的 条评论
为什么被折叠?



