2019独角兽企业重金招聘Python工程师标准>>>

Instructions

Street Fighter 2

Solution:

package codewars.jan;//--https://www.codewars.com/kata/5853213063adbd1b9b0000be/train/java
//--https://www.codewars.com/kata/street-fighter-2-character-selection-part-2/train/java
import java.util.*;public class StreetFighter2 {private static String left(int i, int j, String[] arr) {int to = j;while (true) {to--;if (to == -1) {to = arr.length - 1;}if (!"".equals(arr[to])) {break;}}return String.format("%d%d%s", i, to, arr[to]);}private static String right(int i, int j, String[] arr) {int to = j;while (true) {to++;if (to == arr.length) {to = 0;}if (!"".equals(arr[to])) {break;}}return String.format("%d%d%s", i, to, arr[to]);}public static String[] superStreetFighterize(String[][] fighters,int[] position, String[] moves) {Map<String, String> map = new HashMap<String, String>();final int rows = fighters.length;final int cols = fighters[0].length;for (int i = 0; i < rows; i++) {for (int j = 0; j < cols; j++) {String fighter = fighters[i][j];if ("".equals(fighter)) {continue;}if (i == 0) {map.put(String.format("%d,%d-up", i, j),String.format("%d%d%s", i, j, fighters[i][j]));} else if ("".equals(fighters[i - 1][j])) {map.put(String.format("%d,%d-up", i, j),String.format("%d%d%s", i, j, fighters[i][j]));}else {map.put(String.format("%d,%d-up", i, j), String.format("%d%d%s", i - 1, j, fighters[i - 1][j]));}if (i == rows - 1) {map.put(String.format("%d,%d-down", i, j),String.format("%d%d%s", i, j, fighters[i][j]));} else if ("".equals(fighters[i + 1][j])) {map.put(String.format("%d,%d-down", i, j),String.format("%d%d%s", i, j, fighters[i][j]));}else {map.put(String.format("%d,%d-down", i, j), String.format("%d%d%s", i + 1, j, fighters[i + 1][j]));}map.put(String.format("%d,%d-left", i, j),left(i, j, fighters[i]));map.put(String.format("%d,%d-right", i, j),right(i, j, fighters[i]));}}List<String> list = new ArrayList<String>();String[] current = new String[] { String.valueOf(position[0]),String.valueOf(position[1]) };for (int i = 0; i < moves.length; i++) {String value = map.get(String.format("%s,%s-%s", current[0],current[1], moves[i]));list.add(value.substring(2));current[0] = String.valueOf(value.charAt(0));current[1] = String.valueOf(value.charAt(1));}return list.toArray(new String[0]);}
}

转载于:https://my.oschina.net/u/553266/blog/818381

codewars047: 街头霸王2相关推荐

  1. 用这个Python库,训练你的模型成为下一个街头霸王!

    作者 | MJ-Murray 译者 | 孤鸿 整理 | Jane 出品 | AI科技大本营 从世界瞩目的围棋游戏 AlphaGo,近年来,强化学习在游戏领域里不断取得十分引人注目的成绩.自此之后,棋牌 ...

  2. 与粉丝们互动,街头霸王乐队带来AR应用《Gorillaz》

    <Gorillaz>后续还会不断更新,或许会添加<feel good inc>的故事要素. 街头霸王乐队一直热衷于使用最新的技术来打造具有创意的音乐.上个月,他们推出的沉浸式 ...

  3. 直击中关村创业大街,新街头霸王来了

    中国的硅谷在北京中关村.如今,中关村中正在酝酿硅谷中的硅谷,这里将不断诞生最前卫最现代的互联网和移动互联网创业公司,他们当中极可能孵化出中国互联网企业未来10年的新的BAT. 这个硅谷中的硅谷.就是中 ...

  4. html5 版街头霸王,街头霸王5全DLC整合版

    不知道怎么下载?点我 游戏介绍 <街头霸王5>是一款采用全3D画面的横版格斗游戏,因为DLC比较多乱,所以推出了这个<全DLC整合版>.在<街头霸王5:全DLC整合版&g ...

  5. 街头霸王背景_街头霸王与摇滚明星:开放式领导的艺术

    街头霸王背景 艾伦·冈恩 ( Allen Gunn)是促进者,开源技术专家和Aspiration执行总监,在这里他帮助非政府组织,激进主义者和软件开发商更明智地利用技术来实现社会变革. 本月晚些时候, ...

  6. 著名游戏公司CAPCOM与WAX达成合作 将推出“街头霸王”主题NFT

    12月16日,NFT平台WAX发推宣布与著名游戏公司CAPCOM(卡普空株式会社)达成合作,将推出"街头霸王"主题NFT数字交易卡牌."街头霸王"是由日本CAP ...

  7. 街霸5 android,MD街头霸王5免安装版

    MD街头霸王5免安装版是一款玩法十分经典的格斗游戏,这款游戏里面有着组队战模式.画廊模式.格斗模式等多种模式供你挑战,角色丰富,画面精美逼真,技能炫酷,格斗体验极致畅爽,喜欢的朋友快来下载吧! 游戏介 ...

  8. 《游戏学习》街头霸王HTML游戏源码

    源码下载地址:https://download.csdn.net/download/weixin_40986713/18573962 下载解压后 有三个文件夹,第一个是存放游戏中用到的图片,第二个是用 ...

  9. 基于tf-openpose的动作识别实现街头霸王5对战项目

    记录:基于tf-openpose的动作识别实现街头霸王5对战项目 基于开学2个月的学习,总算是对深度学习有了一些入门的感觉.目前,通过修改图片识别的DNN神经网络代码,使之成为了一个可以对人体部位坐标 ...

最新文章

  1. Keil μVision 5版新建工程详细步骤(版本2)
  2. (仿头条APP项目)7.首页标签页完善和微头条页面设计实现
  3. 最优化方法外罚函数法Matlab,最优化方法 第三篇(罚函数法).pdf
  4. Jenkins发布MVC应用程序
  5. Java之Set接口
  6. 让接口性能轻松翻倍之10条经验
  7. 《Python程序设计基础》在亚马逊当当京东互动出版网淘宝等各大书店上架
  8. 机器学习基石PLA相关
  9. relocation R_X86_64_PC32 against symbol ff_pw_9 can not be used when making a shared object
  10. 数据集:男女身高体重(二维)
  11. .mmap文件如何打开
  12. 正点原子STM32串口通讯实验详解
  13. 数值计算原理_数值方法中的有限元法、有限差分法、有限体积法的区别
  14. php 按指定长度分割字符串,php实现将字符串按照指定距离进行分割的方法
  15. vue 中 axios的post请求,415错误
  16. 2月29日,四年一遇的日子!
  17. 世界上最早的手动计算机,世界上第一台电子计算机诞生于多少年,名字叫做什么...
  18. mysql的tps是什么意思_Mysql数据库的QPS和TPS的意义和计算方法
  19. FastDFS安装步骤
  20. android刷机包基带,手机刷机有必要刷底包基带吗?刷安卓机中基带/底包/固件详解...

热门文章

  1. 使用fswatch工具进行golang的热编译
  2. Cisco2811基本操作
  3. Windows 2003 系统应用故障的分析
  4. DateChooser控件发布ASP.NET 2.0新版(我的ASP.NET 2.0控件开发书的第二个阶段项目)[请大家一定注意版本的更新,下载最新版]...
  5. WordCount程序
  6. UVA 10214 Trees in a Wood
  7. 《Hadoop技术详解》一导读
  8. 平台数据库导入导出快捷工具说明
  9. 二级联动菜单,简单实现
  10. 今天用GRID感觉它严重缺少灵活性