???477 2017-01-21 15:08 采纳率: 100%
浏览 1087
已采纳

Java 小白求编写一道算法题

约翰和他的朋友索尼娅打一场战舰游戏。游戏在N行的正方形地图上进行,编号从1到N.每行包含N个单元格,每列标有连续的英文大写字母(A,B,C等)。每个单元通过由其行编号及其列编号组成的串来标识:例如,“9C” 表示第9行中的第三单元,“15D”表示第15行中的第四单元。

如下图所示,船只由最大面积为4个单元格的矩形定义,X落在船上时表示船被击中,如果一个船每个部位被击中,则该船被沉没。
图片说明

目标是计算沉没的船只的数量和被击中但未沉没的船只的数量。

例如,下图显示了一个大小为N = 4的地图,两个蓝色船只和五个用字母“x”标记的命中;
图片说明
在这个例子中,一艘船已经沉没,另一艘已经被击中但没有沉没。在下一张图片中,沉船被显示为灰色,被击中但尚未沉没的船舶显示为红色:

船的位置被给出为字符串S,其包含分别描述每艘船的左上角和右下角单元的位置对。船舶的描述用逗号分隔。命中的位置为字符串T,包含描述被击中的地图单元的位置:对于上述示例中的地图,S =“1B 2C,2D 4D”和T =“2B 2D 3D 4D 4A”。 S中的船舶和T中的命中可以以任何顺序出现。

写一个函数:

class Solution {public String solution(int N,String S,String T); )

假定地图N的大小和分别描述船只命中位置的两个字符串S,T返回具有两个数字的字符串:沉没船舶的计数和已被击中但未沉没的船舶的数量,用逗号分隔。

例如,假设N = 4,S =“1B 2C,2D 4D”和T =“2B 2D 3D 4D 4A”,您的函数应返回“1,1”,如上所述。

  • 写回答

5条回答 默认 最新

  • ???477 2017-01-21 15:15
    关注

    小白大学没认真学java,这是一道算法考试题,需要用java编写,希望有大神帮忙解答一下,题目有点长,但仔细读一下,看下举例就能明白。java编写出来能运行出结果就直接采纳给分,真心拜托了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛