目录

1 隔行变色

2 立方尾不变

3 无穷分数

4 格子中输出

5 奇妙的数字

6 打印大X

 

前言:以下试题解答代码部分仅供参考,若有不当之处,还请路过的同学提醒一下~


1 隔行变色

隔行变色

Excel表的格子很多,为了避免把某行的数据和相邻行混淆,可以采用隔行变色的样式。
小明设计的样式为:第1行蓝色,第2行白色,第3行蓝色,第4行白色,....
现在小明想知道,从第21行到第50行一共包含了多少个蓝色的行。 请你直接提交这个整数,千万不要填写任何多余的内容。 15
public class Main {

    public static void main(String[] args) {
int count = 0;
for(int i = 21;i <= 50;i++) {
if(i % 2 == 1)
count++;
}
System.out.println(count);
}
}

2 立方尾不变

立方尾不变

有些数字的立方的末尾正好是该数字本身。
比如:1,4,5,6,9,24,25,.... 请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。 请提交该整数,不要填写任何多余的内容。 36
public class Main {

    public static void main(String[] args) {
int count = 0;
for(long i = 1;i <= 10000;i++) {
long temp = i * i * i;
String A = temp + "";
String B = i + "";
int len = B.length();
int judge = Integer.valueOf(A.substring(A.length() - len, A.length()));
if(i == judge) {
System.out.println("i = "+i+", A = "+A);
count++;
}
}
System.out.println(count);
}
}

3 无穷分数

无穷分数

无穷的分数,有时会趋向于固定的数字。
请计算【图1.jpg】所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0。 请填写该浮点数,不能填写任何多余的内容。
0.58198
public class Main {

    public static void main(String[] args) {

        double temp = 10000000 * 1.0 / 1000001;
double result = 0;
for(int i = 10000000;i >= 1;i--) {
result = i - 1 + temp;
temp = (i - 1) / result;
}
System.out.printf("%.5f",result);
}
}

4 格子中输出

格子中输出

stringInGrid方法会在一个指定大小的格子中打印指定的字符串。
要求字符串在水平、垂直两个方向上都居中。
如果字符串太长,就截断。
如果不能恰好居中,可以稍稍偏左或者偏上一点。 下面的程序实现这个逻辑,请填写划线部分缺少的代码。 public static void stringInGrid(int width, int height, String s)
{
if(s.length()>width-2) s = s.substring(0,width-2);
System.out.print("+");
for(int i=0;i<width-2;i++) System.out.print("-");
System.out.println("+"); for(int k=1; k<(height-1)/2;k++){
System.out.print("|");
for(int i=0;i<width-2;i++) System.out.print(" ");
System.out.println("|");
} System.out.print("|"); String ff = _______________________________________________________; //填空
System.out.print(String.format(ff,"",s,"")); System.out.println("|"); for(int k=(height-1)/2+1; k<height-1; k++){
System.out.print("|");
for(int i=0;i<width-2;i++) System.out.print(" ");
System.out.println("|");
} System.out.print("+");
for(int i=0;i<width-2;i++) System.out.print("-");
System.out.println("+");
} 对于题目中数据,应该输出:
+------------------+
| |
| abcd1234 |
| |
| |
+------------------+ (如果出现对齐问题,参看【图1.jpg】) //注意:ff中有三个%s分别对应第一段空格字符,第二段函数给定变量s字符串字符,第三段空格字符
//其中%s表示打印一个字符串变量,%is表示打印出长度为i的空格字符串
//System.out.print(String.format(ff,"",s,""));该语句后面"",s,""分别表示变量1,2,3。即对应第一段字符串,第二段字符串,第三段字符串。而ff则为输出格式。 "%"+((width-2-s.length())/2)+"s%s%"+((width-1-s.length())/2)+"s"

5 奇妙的数字

奇妙的数字

小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。
你能猜出这个数字是多少吗? 请填写该数字,不要填写任何多余的内容。 69
import java.util.Arrays;

public class Main {

    public static void main(String[] args) {
for(long i = 10;i < 200;i++) {
long temp1 = i * i;
long temp2 = i * i * i;
String A = temp1 + "";
String B = temp2 + "";
int len = A.length() + B.length();
if(len == 10) {
long[] array = new long[10];
int j = 0;
while(temp1 > 0) {
array[j++] = temp1 % 10;
temp1 = temp1 / 10;
}
while(temp2 > 0) {
array[j++] = temp2 % 10;
temp2 = temp2 / 10;
}
Arrays.sort(array);
for(j = 0;j < 10;j++) {
if(array[j] == j)
continue;
else
break;
}
if(j == 10)
System.out.println("i = "+i+", i^2 = "+(i*i)+", i^3 = "+(i*i*i));
}
}
}
}

6 打印大X

打印大X

小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。
为了便于比对空格,所有的空白位置都以句点符来代替。 要求输入两个整数m n,表示笔的宽度,X的高度。用空格分开(0<m<n, 3<n<1000, 保证n是奇数)
要求输出一个大X 例如,用户输入:
3 9
程序应该输出:
***.....***
.***...***.
..***.***..
...*****...
....***....
...*****...
..***.***..
.***...***.
***.....*** (如有对齐问题,参看【图1.jpg】) 再例如,用户输入:
4 21
程序应该输出
****................****
.****..............****.
..****............****..
...****..........****...
....****........****....
.....****......****.....
......****....****......
.......****..****.......
........********........
.........******.........
..........****..........
.........******.........
........********........
.......****..****.......
......****....****......
.....****......****.....
....****........****....
...****..........****...
..****............****..
.****..............****.
****................**** (如有对齐问题,参看【图2.jpg】) 资源约定:
峰值内存消耗(含虚拟机) < 256M
CPU消耗 < 1000ms 请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。 所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
注意:不要使用package语句。不要使用jdk1.7及以上版本的特性。
注意:主类的名字必须是:Main,否则按无效代码处理。
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int m = in.nextInt();
int n = in.nextInt();
char[][] A = new char[n][n + m - 1];
for(int i = 0;i < n;i++)
for(int j = 0;j < n + m - 1;j++)
A[i][j] = '.';
int mid = n / 2;
for(int i = 0;i <= mid;i++) {
int startL = i, endL = i + m - 1; //X左边星号开始于截止纵坐标
int startR = n - 1 - i, endR = n + m - 2 - i; //X右边星号起止纵坐标
for(int j = startL;j <= endL;j++) {
A[i][j] = '*';
A[n - 1 - i][j] = '*';
}
for(int j = startR;j <= endR;j++) {
A[i][j] = '*';
A[n - 1 - i][j] = '*';
}
}
//打印题意结果
for(int i = 0;i < n;i++) {
for(int j = 0;j < n + m - 1;j++)
System.out.print(A[i][j]);
System.out.println();
}
}
}

算法笔记_121:蓝桥杯第六届省赛(Java语言C组部分习题)试题解答的更多相关文章

  1. 算法笔记_123:蓝桥杯第七届省赛(Java语言B组部分习题)试题解答

     目录 1 凑算式 2 方格填数 3 四平方和   1 凑算式 凑算式 B DEF A + --- + ------- = 10 C GHI (如果显示有问题,可以参见[图1.jpg]) 这个算式中A ...

  2. 算法笔记_119:蓝桥杯第六届省赛(Java语言A组)试题解答

     目录 1 熊怪吃核桃 2 星系炸弹 3 九数分三组 4 循环节长度 5 打印菱形 6 加法变乘法 7 牌型种数 8 移动距离 9 垒骰子 10 灾后重建   前言:以下试题解答代码部分仅供参考,若有 ...

  3. 算法笔记_120:蓝桥杯第六届省赛(Java语言B组部分习题)试题解答

     目录 1 三角形面积 2 立方变自身 3 三羊献瑞 4 九数组分数 5 饮料换购 6 生命之树   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路过的同学提醒一下~ 1 三角形面积 三角形 ...

  4. 算法笔记_122:蓝桥杯第七届省赛(Java语言A组)试题解答

     目录 1 煤球数目 2 生日蜡烛 3 搭积木 4 分小组 5 抽签 6 寒假作业 7 剪邮票 8 取球博弈 9 交换瓶子 10 压缩变换   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路 ...

  5. 算法笔记_208:第六届蓝桥杯软件类决赛真题(Java语言A组)

    目录 1 胡同门牌号 2 四阶幻方 3 显示二叉树 4 穿越雷区 5 切开字符串 6 铺瓷砖   前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 胡同门牌号 标题:胡同门牌号 小明家住在一条胡同里. ...

  6. 算法笔记_206:第五届蓝桥杯软件类决赛真题(Java语言A组)

    目录 1 海盗分金币 2 六角幻方 3 格子放鸡蛋 4 排列序数 5 幂一矩阵 6 供水设施    前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 海盗分金币 有5个海盗,相约进行一次帆船比赛. 比 ...

  7. 算法笔记_210:第六届蓝桥杯软件类决赛真题(Java语言C组)

    目录 1 机器人数目 2 生成回文数 3 空心菱形 4 奇怪的数列 5 密文搜索 6 居民集会 前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 机器人数目 标题:机器人数目 少年宫新近邮购了小机器人 ...

  8. 算法笔记_204:第四届蓝桥杯软件类决赛真题(Java语言C组)

    目录 1 好好学习 2 埃及分数 3 金蝉素数 4 横向打印二叉树 5 危险系数 6 公式求值   前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 好好学习 汤姆跟爷爷来中国旅游.一天,他帮助中国的 ...

  9. 算法笔记_077:蓝桥杯练习 K好数(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数的数目.例如K = 4, ...

随机推荐

  1. ThinkPHP中I('post.')与create()方法的对比

    简要归纳: 1.二者都可用来接收post表单提交的数据. 2.I('post.')方法可直接接收赋值给变量如$post=I('post.'),create()方法源于父类模型封装,需先实例化父类模型, ...

  2. 【Go入门教程6】struct类型(struct的匿名字段)

    struct Go语言中,也和C或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器.例如,我们可以创建一个自定义类型person代表一个人的实体.这个实体拥有属性:姓名和年龄.这样 ...

  3. hdu1238 Substrings (暴力)

    http://acm.hdu.edu.cn/showproblem.php?pid=1238 Substrings Time Limit : 2000/1000ms (Java/Other)   Me ...

  4. .Net高级技术——对象序列化

    对象序列化 “序列化是将一个对象保存到存储介质上或者将对象进行转换使之能够在网络上传送的行为”.通俗一点的解释,序列化就是把一个对象保存到一个文件或数据库字段中去,反序列化就是从文件或者数据库中取出数 ...

  5. 自定义圆形控件RoundImageView并认识一下attr

    昨天我们学习了自定义带图片和文字的ImageTextButton,非常简单,我承诺给大家要讲一下用自定义属性的方式学习真正的实现自定义控件,在布局文件中使用属性的方式就需要用到attr.xml这个文件 ...

  6. Android开发之ListView条目批量选择删除

    ListView实现的列表,假设是可编辑,可删除的,一般都要提供批量删除功能,否则的话,一项一项的删除体验非常不好,也给用户带来了非常大的麻烦. 实现效果图 详细实现代码 select.xml 主布局 ...

  7. EF实体框架处理实体之间关联关系与EF延迟机制(下)

    在数据库中,表与表之间可能存在多种联系,比如,一对多,多对多的关系.当我们使用逻辑外键在数据库建立两张表之间的关系的时候,我们使用EF实体框架 必然也会将这种关系映射到我们的实体关系中来.所以,在我们 ...

  8. Android之在应用程序内部关注某人的微信

    Intent intent = new Intent(Intent.ACTION_VIEW); intent.setPackage("com.tencent.mm");//直接打开 ...

  9. CentOS 加载/挂载 U盘 (转)

    原文链接:CentOS 加载/挂载 U盘 Linux如何加载(优)U盘 1,以root用户登陆    先加载USB模块 modprobe usb-storage    用fdisk -l 看看U盘的设 ...

  10. 巧妙利用jQuery和PHP打造类似360安全卫士防火墙功能开关(类似iphone界面)效果

    安全卫士防火墙开启关闭的开关,可以将此功能应用在产品功能的开启和关闭功能上. 准备工作为了更好的演示本例,我们需要一个数据表,记录需要的功能说明及开启状态,表结构如下: CREATE TABLE `p ...