目录

1 猜灯谜

2 连续奇数和

3 空白格式化

4 高僧斗法

5 格子刷油漆

6 农场阳光

 

前言:以下代码仅供参考,若有错误欢迎指正哦~


1 猜灯谜

标题:猜灯谜
A 村的元宵节灯会上有一迷题:
请猜谜 * 请猜谜 = 请边赏灯边猜
小明想,一定是每个汉字代表一个数字,不同的汉字代表不同的数字。
请你用计算机按小明的思路算一下,然后提交“请猜谜”三个字所代表的整数即可。 请严格按照格式,通过浏览器提交答案。
注意:只提交一个3位的整数,不要写其它附加内容,比如:说明性的文字。897

 1 package com.liu.Main;
 2
 3
 4 public class Main {
 5      public static void main(String[] args) {
 6             for(int i = 100;i < 1000;i++) {
 7                 int a = i / 100;
 8                 int b = i / 10 % 10;
 9                 int c = i % 10;
10                 if(a != b && a != c && b != c) {
11                     int d = i * i;
12                     if(d >= 100000 && d < 1000000) {
13                         String temp = d + "";
14                         if(temp.charAt(0) != temp.charAt(5) && temp.charAt(0) - '0' == a && temp.charAt(5) - '0' == b) {
15                             if(temp.charAt(1) == temp.charAt(4) && temp.charAt(2) != temp.charAt(3))
16                                 System.out.println("i = "+i+", d = "+d);
17                         }
18                     }
19                  }
20             }
21         }
22 }


2 连续奇数和

标题:连续奇数和
小明看到一本书上写着:任何数字的立方都可以表示为连续奇数的和。
比如:
2^3 = 8 = 3 + 5
3^3 = 27 = 7 + 9 + 11
4^3 = 64 = 1 + 3 + ... + 15
虽然他没有想出怎么证明,但他想通过计算机进行验证。
请你帮助小明写出 111 的立方之连续奇数和表示法的起始数字。如果有多个表示方案,选择起始数字小的方案。
请严格按照要求,通过浏览器提交答案。
注意:只提交一个整数,不要写其它附加内容,比如:说明性的文字。371

 1 public class Main {
 2
 3
 4     public static void main(String[] args) {
 5         int result = 111 * 111 * 111;
 6         for(int i = 1;i < 10000000;i = i + 2) {
 7             int sum = 0;
 8             for(int j = i;j < 10000000;j = j + 2) {
 9                 sum += j;
10                 if(sum == result) {
11                     System.out.println("i = "+i);
12                     return;
13                 } else if(sum > result)
14                     break;
15             }
16         }
17     }
18 }


3 空白格式化

 

标题:空白格式化
本次大赛采用了全自动机器测评系统。
如果你的答案与标准答案相差了一个空格,很可能无法得分,所以要加倍谨慎! 但也不必过于惊慌。因为在有些情况下,测评系统会把你的答案进行“空白格式化”。其具体做法是:去掉所有首尾空白;中间的多个空白替换为一个空格。所谓空白指的是:空格、制表符、回车符。
以下代码实现了这个功能。仔细阅读代码,填写缺失的部分。
void f(char* from, char* to)
{
char* p_from = from;
char* p_to = to;
while(*p_from==' ' || *p_from=='\t' || *p_from=='\n') p_from++;do{if(*p_from==' ' || *p_from=='\t' || *p_from=='\n')  {do {p_from++;} while(*p_from==' ' || *p_from=='\t' || *p_from=='\n'); if(____________________) *p_to++ = ' '; //填空位置
        }
}while(*p_to++ = *p_from++);}
请分析代码逻辑,并推测划线处的代码,通过网页提交。
注意:仅把缺少的代码作为答案,千万不要填写多余的代码、符号或说明文字!!*p_from


4 高僧斗法

标题:高僧斗法
古时丧葬活动中经常请高僧做法事。仪式结束后,有时会有“高僧斗法”的趣味节目,以舒缓压抑的气氛。
节目大略步骤为:先用粮食(一般是稻米)在地上“画”出若干级台阶(表示N级浮屠)。又有若干小和尚随机地“站”在某个台阶上。最高一级台阶必须站人,其它任意。(如图所示
)
两位参加游戏的法师分别指挥某个小和尚向上走任意多级的台阶,但会被站在高级台阶上的小和尚阻挡,不能越过。两个小和尚也不能站在同一台阶,也不能向低级台阶移动。 两法师轮流发出指令,最后所有小和尚必然会都挤在高段台阶,再也不能向上移动。轮到哪个法师指挥时无法继续移动,则游戏结束,该法师认输。
对于已知的台阶数和小和尚的分布位置,请你计算先发指令的法师该如何决策才能保证胜出。
输入数据为一行用空格分开的N个整数,表示小和尚的位置。台阶序号从1算起,所以最后一个小和尚的位置即是台阶的总数。(N<100, 台阶总数<1000)
输出为一行用空格分开的两个整数: A B, 表示把A位置的小和尚移动到B位置。若有多个解,输出A值较小的解,若无解则输出-1。
例如:
用户输入:
1 5 9
则程序输出:
1 4
再如:
用户输入:
1 5 8 10
则程序输出:
1 3

 1 import java.util.Scanner;
 2
 3 public class Main {
 4
 5     public static void main(String[] args) {
 6         Scanner in = new Scanner(System.in);
 7         String A = in.nextLine();
 8         String[] arrayA = A.split(" ");
 9         int[] num = new int[arrayA.length];
10         for(int i = 0;i < arrayA.length;i++)
11             num[i] = Integer.valueOf(arrayA[i]);
12         int[] B = new int[num.length];
13         for(int i = 1;i < num.length;i++)
14             B[i] = num[i] - num[i - 1] - 1;
15         int sum = 0;
16         for(int i = 1;i < B.length;i = i + 2)
17             sum ^= B[i];
18         if(sum > 0) {
19             for(int i = 1;i < num.length;i++) {
20                 for(int j = 1;num[i - 1] + j < num[i];j++) {
21                     B[i] = num[i] - num[i - 1] - j - 1;
22                     if(i != 1)
23                         B[i - 1] = num[i - 1] - num[i - 2] + j - 1;
24                     sum = 0;
25                     for(int k = 1;k < B.length;k = k + 2)
26                         sum ^= B[k];
27                     if(sum == 0) {
28                         System.out.println(num[i - 1]+" "+(num[i - 1]+j));
29                         return;
30                     }
31                     B[i] = num[i] - num[i - 1] - 1;
32                     if(i != 1)
33                         B[i - 1] = num[i - 1] - num[i - 2] - 1;
34                 }
35             }
36             System.out.println("-1");
37         } else {
38             System.out.println("-1");
39         }
40     }
41
42 }


5 格子刷油漆

标题:格子刷油漆
X国的一段古城墙的顶端可以看成 2*N个格子组成的矩形(如图所示),现需要把这些格子刷上保护漆。
你可以从任意一个格子刷起,刷完一格,可以移动到和它相邻的格子(对角相邻也算数),但不能移动到较远的格子(因为油漆未干不能踩!)
比如:a d b c e f 就是合格的刷漆顺序。
c e f d a b 是另一种合适的方案。
当已知 N 时,求总的方案数。当N较大时,结果会迅速增大,请把结果对 1000000007 (十亿零七) 取模。
输入数据为一个正整数(不大于1000)
输出数据为一个正整数。
例如:
用户输入:
2
程序应该输出:
24
再例如:
用户输入:
3
程序应该输出:
96
再例如:
用户输入:
22
程序应该输出:
359635897

 1 import java.util.Scanner;
 2
 3 public class Main {
 4     public static int MOD = 1000000007;
 5
 6     public static void main(String[] args) {
 7         Scanner in = new Scanner(System.in);
 8         int n = in.nextInt();
 9         long[] q1 = new long[n + 1];
10         long[] q2 = new long[n + 1];
11         q1[1] = 1;
12         q1[2] = 2;
13         q2[1] = 1;
14         q2[2] = 6;
15         for(int i = 3;i <= n;i++) {
16             q1[i] = (2 * q1[i - 1]) % MOD;
17             q2[i] = (2 * q1[i - 1] + 2 * q2[i - 1] + 4 * q2[i - 2]) % MOD;
18         }
19         long sum = (4 * q2[n]) % MOD;
20         for(int i = 2;i < n;i++) {
21             sum = sum + 4 * (q1[i] * q2[n - i] + q1[n - i + 1] * q2[i - 1]) % MOD;
22             sum %= MOD;
23         }
24         if(n == 1)
25             sum = 2;
26         System.out.println(sum);
27     }
28 }


6 农场阳光

标题:农场阳光
X星球十分特殊,它的自转速度与公转速度相同,所以阳光总是以固定的角度照射。 最近,X星球为发展星际旅游业,把空间位置出租给Y国游客来晒太阳。每个租位是漂浮在空中的圆盘形彩云(圆盘与地面平行)。当然,这会遮挡住部分阳光,被遮挡的土地植物无法生长。
本题的任务是计算某个农场宜于作物生长的土地面积有多大。
输入数据的第一行包含两个整数a, b,表示某农场的长和宽分别是a和b,此时,该农场的范围是由坐标(0, 0, 0), (a, 0, 0), (a, b, 0), (0, b, 0)围成的矩形区域。
第二行包含一个实数g,表示阳光照射的角度。简单起见,我们假设阳光光线是垂直于农场的宽的,此时正好和农场的长的夹角是g度,此时,空间中的一点(x, y, z)在地面的投影点应该是(x + z * ctg(g度), y, 0),其中ctg(g度)表示g度对应的余切值。
第三行包含一个非负整数n,表示空中租位个数。
接下来 n 行,描述每个租位。其中第i行包含4个整数xi, yi, zi, ri,表示第i个租位彩云的圆心在(xi, yi, zi)位置,圆半径为ri。
要求输出一个实数,四舍五入保留两位有效数字,表示农场里能长庄稼的土地的面积。 例如:
用户输入:
10 10
90.0
1
5 5 10 5
程序应该输出:
21.46
再例如:
用户输入:
8 8
90.0
1
4 4 10 5
程序应该输出:
1.81
样例3:
用户输入:
20 10
45.0
2
5 0 5 5
8 6 14 6
程序输出: 130.15

未做出>~<

算法笔记_203:第四届蓝桥杯软件类决赛真题(C语言B组)相关推荐

  1. 金蝉素数c语言,算法笔记_204:第四届蓝桥杯软件类决赛真题(Java语言C组)

    前言:以下代码仅供参考,若有错误欢迎指正哦~ 1好好学习 汤姆跟爷爷来中国旅游.一天,他帮助中国的小朋友贴标语.他负责贴的标语是分别写在四块红纸上的四个大字:"好.好.学.习".但 ...

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

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

  3. 算法笔记_202:第三届蓝桥杯软件类决赛真题(Java高职)

    目录 1 填算式 2 提取子串 3 机器人行走 4 地址格式转换 5 排日程   前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 填算式 [结果填空] (满分11分)看这个算式:☆☆☆ + ☆☆☆ ...

  4. 算法笔记_110:第四届蓝桥杯软件类省赛真题(JAVA软件开发高职高专组部分习题)试题解答...

     目录 1 猜年龄 2 组素数 3 第39级台阶 4 核桃的数量 5 打印十字图 6 买不到的数目   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路过的同学提醒一下~ 1 猜年龄 标题: ...

  5. 主要成就和特殊贡献 java软件_算法笔记_212:第七届蓝桥杯软件类决赛真题(Java语言B组)...

    前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 愤怒小鸟 愤怒小鸟 X星球愤怒的小鸟喜欢撞火车! 一根平直的铁轨上两火车间相距1000米 两火车 (不妨称A和B) 以时速 10米/秒 相对行驶. 愤 ...

  6. 第六届蓝桥杯大赛个人赛决赛(软件类)真题-Java语言B组

    目录 1.分机号 2.五星填数 3.显示二叉树 4.穿越雷区 5.表格计算 6.铺瓷砖 1.分机号 X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位 ...

  7. 第六届蓝桥杯大赛个人赛决赛(软件类)真题 Java语言B组 答案

    标题:分机号 X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位.比如: 751,520,321 都满足要求,而, 766,918,201 就不符合要 ...

  8. 第七届蓝桥杯大赛个人赛决赛(软件类)真题 Java语言B组 答案

    以下代码纯自想自打,如有误,请提出,如可简,请告之,谢谢大家了. 蓝桥杯辅助资料 真题下载 1 愤怒小鸟 X星球愤怒的小鸟喜欢撞火车! 一根平直的铁轨上两火车间相距 1000 米 两火车 (不妨称A和 ...

  9. 第十二届蓝桥杯大赛个人赛省赛(软件类)真题-Java语言B组

    目录 1.ASC 2.卡片 3.直线 4.货物摆放 5.路径 6.时间显示 7.最少砝码 8.杨辉三角形 9.双向排序 10.括号序列 1.ASC [问题描述] 已知大写字母 A 的 ASCII 码为 ...

最新文章

  1. 网速不给力,我们自己给——MinGW的手动安装与配置
  2. ThinkCMF 和 OneThink内容管理系统对比
  3. linux和windows输入法设置,关于输入法框架,这里有可以跨平台的linux和windows。。。。...
  4. centos安装jenkins
  5. 可选和对象:空指针救星!
  6. Discuz 升级X3问题汇总整理
  7. HDU-1518 Square dfs+剪枝
  8. 10.8.8.8柠檬wifi网页登录_基于企业邮箱进行wifi实名认证的方案
  9. 我终于知道公司前端为啥不加班了…
  10. MS Sql Server 数据库或表修复(DBCC CHECKDB)
  11. Qtp10安装过程遇到的问题
  12. 51单片机c语言延时一秒,单片机C语言的延时
  13. linux查找文件夹名称
  14. win10远程计算机证书错误,设置win10系统ie证书错误的详细办法
  15. 玩客云刷linuxARMBIAN当服务器过程记录
  16. Mac 共享 wifi
  17. 微信小程序canvas绘制圆形头像
  18. 告白气球,这个情人节你值得拥有!
  19. ar8171 linux网卡驱动下载,ar8171 8175网卡驱动
  20. shape制作出来的虚线

热门文章

  1. java组织树级结构
  2. 三个变量存在一个协整方程_计量经济学31个简答参考答案
  3. 地铁线路图显示效果php,基于HTML5制作在线上海地铁图
  4. M: Mysterious Conch(哈希表)
  5. 从外包到React核心团队成员
  6. Redis 全实践(超长文预警)
  7. 划一划新闻作手机端最简洁的新闻聚合网站
  8. 全球与中国网络性能监控工具市场现状及未来发展趋势
  9. 数字增长动画-uniapp插件
  10. 【区块链论文整理】VLDB篇