1. 小明在爷爷的私人收藏馆里找到一台老式电脑。居然没有图形界面,只能用控制台编程。
  2. 如上图,是游戏时画面截图。
  3. 其中,H表示蛇头,T表示蛇尾。#表示蛇的身体,@表示身体交叉重叠的地方。
  4. 你能说出现在的贪吃蛇长度是多少吗?
  5.  
  6. 其实,只要数出#的数目算1,数出@的数目,算2,再加上头尾各算1就计算好了。
  7.  
  8. 人工数一下?太累眼睛了,聪明的你为什么不让计算机帮忙呢?
  9.  
  10. 本题的要求就是: 请填写上图中贪食蛇的长度是多少?
  11.  
  12. 注意:需要提交的是一个整数,不要添加任何多余内容(比如说明或注释)
  1. +————————————————-+
  2. | |
  3. | H###### #### |
  4. | # # # |
  5. | # # # |
  6. | # #### # # |
  7. | # # # # # |
  8. | ######@### # # |
  9. | # #### # # |
  10. | # # # # # |
  11. | ####@#######@### # # |
  12. | # # # # # |
  13. | T ##### # # # ## |
  14. | # # ### ### ## |
  15. | ################ # # #### |
  16. | # # # # |
  17. | ############## #######@########## |
  18. | # ### |
  19. | ########################### |
  20. +————————————————-+

这道题比较简单。我们可以考虑把输入的东西用字符串存储,每一行存储为一个串,然后用循环遍历string,把它存储为chararray即可。

之后再用判断语句来实现题目要求。代码如下:


  1. import java.util.Scanner;
  2.  
  3. public class 贪吃蛇长度 {
  4. public static void main(String[] args) {
  5. String s[] = {
  6. "H###### #### |",
  7. "| # # # |",
  8. "| # # # |",
  9. "| # #### # # |",
  10. "| # # # # # |",
  11. "| ######@### # # |",
  12. "| # #### # # |",
  13. "| # # # # # |",
  14. "| ####@#######@### # # |",
  15. "| # # # # # |",
  16. "| T ##### # # # ## |",
  17. "| # # ### ### ## |",
  18. "| ################ # # #### |",
  19. "| # # # # ",
  20. "| ############## #######@########## |",
  21. "| # ### |",
  22. "| ###########################"
  23. };
  24. char[][] arr = new char[60][30];
  25. for (int i = 0; i <s.length; i++) {
  26. arr[i] = s[i].toCharArray();
  27. }
  28. int ans = 0;
  29. for (int i = 0; i < 60; i++) {
  30. for (int j = 0; j < arr[i].length; j++) {
  31. if(arr[i][j] == '#'||arr[i][j] == 'T'||arr[i][j] == 'H') {
  32. ans++;
  33. }else if (arr[i][j] == '@') {
  34. ans+=2;
  35. }
  36. }
  37.  
  38. }
  39. System.out.println(ans);
  40. }
  41.  
  42. }

蓝桥杯 贪吃蛇长度java实现的更多相关文章

  1. 2017蓝桥杯贪吃蛇(C++C组)

    原题: 贪吃蛇长度+-------------------------------------------------+|                                        ...

  2. 蓝桥杯-循环节长度-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  3. 贪吃蛇的java代码分析(二)

    代码剖析 贪吃蛇是一款十分经典的小游戏,对初入coding的朋友来说,拿贪吃蛇这样一个案例来练手十分合适,并不高的难度和成功后的成就感都是学习所必须的.下面我将依照我当时的思路,来逐步分析实现的整个过 ...

  4. 贪吃蛇的java代码分析(三)

    代码剖析 在上一篇文章中,我们完成了贪吃蛇部分代码的构造.回头审视我们写的代码与思路,会发现我们遗漏了一个重要的地方,那就是:贪吃蛇的自身移动.想必大家都知道,贪吃蛇自身是会自己移动的,并且会跟随你的 ...

  5. 算法笔记_052:蓝桥杯练习Multithreading(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 现有如下一个算法: repeat ni times yi := y y := yi+1 end repeat 令n[1]为你需要算加法的第 ...

  6. 贪吃蛇的java代码分析(一)

    自我审视 最近自己学习java已经有了一个多月的时间,从一开始对变量常量的概念一无所知,到现在能勉强写几个小程序玩玩,已经有了长足的进步.今天没有去学习,学校里要进行毕业答辩和拍毕业照了,于是请了几天 ...

  7. java实现第六届蓝桥杯循环节长度

    循环节长度 两个整数做除法,有时会产生循环小数,其循环部分称为:循环节. 比如,11/13=6=>0.846153846153..... 其循环节为[846153] 共有6位. 下面的方法,可以 ...

  8. 蓝桥杯-n级台阶-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  9. 蓝桥杯-兰顿蚂蚁-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

随机推荐

  1. CF498B题解

    咋黑色啊,这不是看到数据范围就去想 \(O(nT)\) 的做法吗? 然后仔细想想最靠谱的就是 DP. 设 \(dp[n][T]\) 表示听完第 \(n\) 首歌,总共听了 \(T\) 秒. 很明显有 ...

  2. PO模式在selenium自动化测试框架有什么好处

    PO模式是在UI自动化测试过程当中使用非常频繁的一种设计模式,使用这种模式后,可以有效的提升代码的复用能力,并且让自动化测试代码维护起来更加方便. PO模式的全称叫page object model( ...

  3. VMware安装win7后,安装VMware Tools时报错安装程序无法继续。本程序需要您将此虚拟机上安装的操作系统更新到SP1

    具体报错: 倘若你用的是这样的镜像:cn_windows_7_enterprise_x64_dvd_x15-70741.iso 换镜像源.换镜像源.换镜像源! 换成带sp1的iso镜像:cn_wind ...

  4. 企业应用架构研究系列二:MSF&Scrum 项目管理

    从业软件项目这么多年,在企业应用开发项目中,项目能否成功,是否能按照项目计划有效的推进,是有很强的一套项目管理理论.最早的时候,接触的项目管理的方法论就是微软的MSF(Microsoft Soluti ...

  5. 半吊子菜鸟学Web开发 -- PHP学习2-正则,cookie和session

    1正则表达式 1.1基本的匹配字符串 $p = '/apple/'; $str = "apple banna"; if (preg_match($p, $str)) { echo ...

  6. 序列化接口的id有什么用?

    反序列化Java对象时必须提供该对象的class文件,现在的问题是随着项目的升级,系统的class文件也会升级,Java如何保证两个class文件的兼容性? Java序列化机制允许为序列化类提供一个p ...

  7. 如何在自定义端口上运行 Spring Boot 应用程序?

    为了在自定义端口上运行 Spring Boot 应用程序,您可以在 application.properties 中指定端口. server.port = 8090

  8. XML 文档定义有几种形式?它们之间有何本质区别?解析 XML 文档有哪几种方式?

    XML 文档定义分为 DTD 和 Schema 两种形式,二者都是对 XML 语法的约束,其 本质区别在于 Schema 本身也是一个 XML 文件,可以被 XML 解析器解析,而且 可以为 XML ...

  9. Redis 最适合的场景?

    1.会话缓存(Session Cache) 最常用的一种使用 Redis 的情景是会话缓存(session cache).用 Redis 缓存会 话比其他存储(如 Memcached)的优势在于:Re ...

  10. Grep 命令有什么用? 如何忽略大小写? 如何查找不含 该串的行?

    是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印 出来. grep [stringSTRING] filename grep [^string] filename