算法训练 4-1打印下述图形  
时间限制:1.0s   内存限制:256.0MB
问题描述
  使用循环结构打印下述图形,打印行数n由用户输入。打印空格时使用"%s"格式,向printf函数传递只包含一个或多个空格的字符串" ",下同。
样例输入
一个满足题目要求的输入范例。
例:

5

样例输出
与上面的样例输入对应的输出。
例:
数据规模和约定
  输入数据中每一个数的范围。
  例:0<n<20。
 
题目解析:
  本道题共两种思路,由于 n 的范围很小(0 < n <20),所以两种思路就运行时间、占用内存和复杂度并无优劣之分。
  (1)用循环语句分别控制行、每行开始的空格和每行的 *。
    比如,n = 3
            
          
                表 1.1
    利用 i ( i 从 1 开始)来控制行,因此可以推出空格数 space 与 行数 n 和控制行变量 i 的关系: space = n - i ,* 数 asterisk 与控制行变量 i 的关系: asterisk = 2 * i - 1。
 
    (2)将图形存放在 String 类型的数组中,数组初始化为空。如图 1.1 所示,找出中心列号 center = n - 1,每 i 行都是在中心列的左右两边加 i 个 *,最后将数组输出即可。

示例代码1:

 import java.util.Scanner;

 public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(); for(int i = 1; i <= n; i++){ //控制行
for(int space = n-i ; space >= 1; space--){ //控制每行前边的空格
System.out.print(" ");
}
for(int asterisk = 1 ; asterisk <= 2 * i - 1; asterisk++){ //控制每行的 *
System.out.print("*");
}
System.out.println();
}
}
}

示例代码2:

 import java.util.Scanner;

 public class Main {

     public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(); String[][] triangle = new String[n][2*n-1]; //创建一个数组,初始化为空
for(int i = 0; i < n; i++) {
for(int j = 0; j < 2*n-1; j++) {
triangle[i][j] = " ";
}
} int center = n-1; //中心列号
for(int i = 0; i < n; i++) { //控制行
for(int j = 0; j <= i ; j++) { //每行在中心左右两边增加 i 个 *
triangle[i][center-j] = "*";
triangle[i][center+j] = "*";
}
}
//输出图形
for(int i = 0; i < n; i++) {
for(int j = 0; j < 2*n-1; j++) {
System.out.print(triangle[i][j]);
}
System.out.print("\n");
}
}
}

  

蓝桥杯 算法训练 ALGO-145 4-1打印下述图形的更多相关文章

  1. Java实现 蓝桥杯 算法训练 猴子吃包子(暴力)

    试题 算法训练 猴子吃包子 问题描述 从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同:肉包每秒钟吃x个:韭菜包每秒钟吃y个:没有馅的包子每秒钟吃z个:现在有x1个肉 ...

  2. Java实现蓝桥杯 算法训练 大等于n的最小完全平方数

    试题 算法训练 大等于n的最小完全平方数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 输出大等于n的最小的完全平方数. 若一个数能表示成某个自然数的平方的形式,则称这个数为完全平 ...

  3. 蓝桥杯算法训练 java算法 表达式求值

    问题描述 输入一个只包含加减乖除和括号的合法表达式,求表达式的值.其中除表示整除. 输入格式 输入一行,包含一个表达式. 输出格式 输出这个表达式的值. 样例输入 1-2+3*(4-5) 样例输出 - ...

  4. java实现 蓝桥杯 算法训练 Password Suspects

    问题描述 在年轻的时候,我们故事中的英雄--国王 Copa--他的私人数据并不是完全安全地隐蔽.对他来说是,这不可接受的.因此,他发明了一种密码,好记又难以破解.后来,他才知道这种密码是一个长度为奇数 ...

  5. 蓝桥杯 算法训练 Torry的困惑(基本型)(水题,筛法求素数)

    算法训练 Torry的困惑(基本型) 时间限制:1.0s   内存限制:512.0MB      问题描述 Torry从小喜爱数学.一天,老师告诉他,像2.3.5.7……这样的数叫做质数.Torry突 ...

  6. 蓝桥杯 算法训练 区间k大数查询(水题)

    算法训练 区间k大数查询 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个. 输入格式 第一行包含一个数n,表示序列长度. ...

  7. 蓝桥杯--算法训练 区间k大数查询

                                                                                 算法训练 区间k大数查询   时间限制:1.0 ...

  8. 蓝桥杯 算法训练 ALGO-116 最大的算式

    算法训练 最大的算式   时间限制:1.0s   内存限制:256.0MB 问题描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量 ...

  9. 蓝桥杯算法训练 区间k大数查询

    算法训练 区间k大数查询   问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个. 输入格式 第一行包含一个数n,表示序列长度. 第二行包含n个正整数,表示给定的序列. 第三个 ...

随机推荐

  1. CSS3带小图标垂直下拉菜单

    在线演示 本地下载

  2. 安装Discuz开源论坛

    11.添加mysql普通用户 接着上篇的lamp这篇安装Discuz 配置虚拟主机 1.打开虚拟主机配置 [root@NFS-31 ~]# vim /usr/local/apache2/conf/ht ...

  3. android 修改源码framework后如何编译【转】

    本文转载自:https://blog.csdn.net/fuchengbo000/article/details/43193801 1.如果在framework/base/core/res/res下添 ...

  4. Docker 共享存储解决方案Rex-Ray

    github地址:https://github.com/rexray/rexray 安装: curl -sSL https://rexray.io/install | sh - 生成配置文件: htt ...

  5. Django object filter查询[转]

    用PYTHON ,DJANGO 做站,在通常的情况下,需要用到 orM 的查询方法,比如object.filter(tag__contains='keywords').... 在这种情况下,如果你跟踪 ...

  6. Shell脚本报错--syntax error near unexpected token for((i=0;i<$length;i++))

    现象: shell脚本使用Nodepad++进行本地编辑,在编辑后上传到linux机器进行执行时提示“syntax error near unexpected token for((i=0;i< ...

  7. nodejs 中module.exports 和 exports 区别详细介绍

    你肯定非常熟悉nodejs模块中的exports对象,你可以用它创建你的模块接下来介绍创建过程,感兴趣的朋友可以参考下 你肯定非常熟悉nodejs模块中的exports对象,你可以用它创建你的模块.例 ...

  8. Spring初学之spring的事务管理注解

    spring的事务管理,本文的例子是:比如你需要网购一本书,卖书的那一方有库存量以及书的价格,你有账户余额.回想我们在编程中要实现买书这样的功能,由于你的账户表和书的库存量表肯定不是同一张数据库表,所 ...

  9. SqlCacheDependency轮询数据库表的更改情况的频率

    下面的示例向 ASP.NET 应用程序添加一个 SqlCacheDependency.   <sqlCacheDependency enabled="true" pollTi ...

  10. 一个简单客户端获取IP,国家,城市,省份的代码

    <html><head>  <script src="js/jquery-1.6.2.min.js" type="text/javascri ...