L1-002 打印沙漏 (20 分)
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印





所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。

给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。

输入格式:
输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。

输出格式:
首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。

输入样例:
19 *
输出样例:





2

import java.util.Scanner;
public class Main {public static void main(String[] args) {int i,j,k;       //用于循环int n;            //有几个正整数int b=1;       //表示一行的最大个数     int h=1;       //计算行数int sum=1;       //至少会打印1个星int g=0;     //决定打印空格的元素int index;       //记住下半行的打印星数String Str;     //符号char c;Scanner dx = new Scanner(System.in);n = dx.nextInt();Str = dx.nextLine(); //先输入一个字符串c = Str.charAt(1);       //再利用字符串转为字符方法得到字符if(n<7) {System.out.println(c);System.out.println(n-1);System.exit(0);     //请求终止JVM}else {while(sum<=n) {b = b+2;sum = sum + b*2;h++;}}h=h-1;      //因为K初始值为1,所以会多算出一行,要减去1才是真实的上半部分与下半部分的行数index = h;  //保护下半行行数sum = sum - 2*b;  //减去上下两边的最大行数,即为多算的个数sum = n -sum;for(i=h;i>=1;i--)        //打印上半部分【包括中间的符号】{for(j=1;j<=g;j++)System.out.print(" ");for(k=1;k<=2*i-1;k++)System.out.print(c);System.out.println();g++;}for(i=2;i<=index;i++){for(j=1;j<=(g-2);j++){System.out.print(" ");}for(k=1;k<=2*i-1;k++){System.out.print(c);}System.out.println();g--;}System.out.println(sum);}
}

L1-002 打印沙漏 (20 分)—团体程序设计天梯赛相关推荐

  1. 7-1 打印沙漏 (20 分)

    ** 7-1 打印沙漏 (20 分) ** 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 ************ ***** 所谓&q ...

  2. C语言程序练习-L1-002 打印沙漏 (20分)

    L1-002 打印沙漏 (20分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数 ...

  3. C++学习之路 | PTA乙级—— 1027 打印沙漏 (20 分)(精简)

    1027 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个 ...

  4. 7-138 打印沙漏 (20 分)

    7-138 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 ************ ***** 所谓" ...

  5. PTA练习题1027 打印沙漏 (20分)

    1027 打印沙漏 (20分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个符 ...

  6. 打印沙漏 (20 分)

    打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个符号:各行 ...

  7. 1027 打印沙漏 (20 分)

    1027 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个 ...

  8. 【CCCC】PAT : 团体程序设计天梯赛-练习集 L1 答案

    [CCCC]PAT : 团体程序设计天梯赛-练习集 L1 答案 鉴定完毕,全部水题 ヾ(•ω•`)o 标号 标题 分数 通过数 提交数 通过率 L1-001 Hello World 5 46779 1 ...

  9. GPLT团体程序设计天梯赛题解L1部分

    文章目录 00x L1-001 Hello World (5 分) L1-002 打印沙漏 (20 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) L1-005 ...

  10. 团体程序设计天梯赛 -- 练习集 (L1合集)

    文章目录 L1-001 Hello World (5 分) L1-002 打印沙漏 (20 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) L1-005 考试座位 ...

最新文章

  1. C# 4.0中的协变和逆变(一)
  2. matlab 现代信号处理,The-first-matlab-exercise 清华大学张旭东老师现代信号处理第一次matlab习题 - 下载 - 搜珍网...
  3. 字符在计算机中是如何表示的?
  4. npm install的代理问题
  5. django 函数装饰器 变为 类装饰器
  6. mysql phpmyadmin 安装_phpmyadmin怎么安装
  7. 二进制十六进制相互转换
  8. Mysql 基础学习
  9. 【机器学习】基于GBDT的数据回归及python实现
  10. Matplotlib简介和pyplot的简单使用——subplot
  11. 面试疑点:几道题答了一个小时,应该是等答案
  12. mysql按笔划排序_Sql Server数据库汉字按字母、笔划、拼音首字母、排序
  13. Lua学习---编译生成lua和luac
  14. javascript实现常用的设计模式
  15. Cortex M4 SVC 中断
  16. 绿色风格资格证书学校培训机构网站源码 织梦dedecms模板 带手机版
  17. 鸿蒙os beta3.0怎么升级,鸿蒙系统 2.0 Beta3.0版本更新详解
  18. 区分计算机网络和互联网的概念,网络的概念,网络与互联网的区别
  19. Flink SQL语法检查
  20. 星加坡php开发_新加坡樟宜机场新地标-星耀樟宜 | 贝诺Benoy

热门文章

  1. springMVC使用HandlerMethodArgumentResolver 自定义解析器实现请求参数绑定方法参数
  2. 如何获取ezui tree 所有子节点
  3. 以下内容为Stackoverflow上整理以作纪录
  4. Windows7 64位下SDK Manager.exe无法运行问题解决方法
  5. 【Linux】肝!Shell 脚本编程最佳实践
  6. 算法岗面试整理 | 腾讯、字节、美团、阿里
  7. 【学术杂谈】博士毕业都去哪儿了,谈谈学术的这条路该如何走
  8. Python_Tika
  9. 我大意了,刚一放出来就上了牛客网头条了
  10. 金融评分卡项目—6.互联网金融业贷款申请评分卡介绍