codewars047: 街头霸王2
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相关推荐
- 用这个Python库,训练你的模型成为下一个街头霸王!
作者 | MJ-Murray 译者 | 孤鸿 整理 | Jane 出品 | AI科技大本营 从世界瞩目的围棋游戏 AlphaGo,近年来,强化学习在游戏领域里不断取得十分引人注目的成绩.自此之后,棋牌 ...
- 与粉丝们互动,街头霸王乐队带来AR应用《Gorillaz》
<Gorillaz>后续还会不断更新,或许会添加<feel good inc>的故事要素. 街头霸王乐队一直热衷于使用最新的技术来打造具有创意的音乐.上个月,他们推出的沉浸式 ...
- 直击中关村创业大街,新街头霸王来了
中国的硅谷在北京中关村.如今,中关村中正在酝酿硅谷中的硅谷,这里将不断诞生最前卫最现代的互联网和移动互联网创业公司,他们当中极可能孵化出中国互联网企业未来10年的新的BAT. 这个硅谷中的硅谷.就是中 ...
- html5 版街头霸王,街头霸王5全DLC整合版
不知道怎么下载?点我 游戏介绍 <街头霸王5>是一款采用全3D画面的横版格斗游戏,因为DLC比较多乱,所以推出了这个<全DLC整合版>.在<街头霸王5:全DLC整合版&g ...
- 街头霸王背景_街头霸王与摇滚明星:开放式领导的艺术
街头霸王背景 艾伦·冈恩 ( Allen Gunn)是促进者,开源技术专家和Aspiration执行总监,在这里他帮助非政府组织,激进主义者和软件开发商更明智地利用技术来实现社会变革. 本月晚些时候, ...
- 著名游戏公司CAPCOM与WAX达成合作 将推出“街头霸王”主题NFT
12月16日,NFT平台WAX发推宣布与著名游戏公司CAPCOM(卡普空株式会社)达成合作,将推出"街头霸王"主题NFT数字交易卡牌."街头霸王"是由日本CAP ...
- 街霸5 android,MD街头霸王5免安装版
MD街头霸王5免安装版是一款玩法十分经典的格斗游戏,这款游戏里面有着组队战模式.画廊模式.格斗模式等多种模式供你挑战,角色丰富,画面精美逼真,技能炫酷,格斗体验极致畅爽,喜欢的朋友快来下载吧! 游戏介 ...
- 《游戏学习》街头霸王HTML游戏源码
源码下载地址:https://download.csdn.net/download/weixin_40986713/18573962 下载解压后 有三个文件夹,第一个是存放游戏中用到的图片,第二个是用 ...
- 基于tf-openpose的动作识别实现街头霸王5对战项目
记录:基于tf-openpose的动作识别实现街头霸王5对战项目 基于开学2个月的学习,总算是对深度学习有了一些入门的感觉.目前,通过修改图片识别的DNN神经网络代码,使之成为了一个可以对人体部位坐标 ...
最新文章
- Keil μVision 5版新建工程详细步骤(版本2)
- (仿头条APP项目)7.首页标签页完善和微头条页面设计实现
- 最优化方法外罚函数法Matlab,最优化方法 第三篇(罚函数法).pdf
- Jenkins发布MVC应用程序
- Java之Set接口
- 让接口性能轻松翻倍之10条经验
- 《Python程序设计基础》在亚马逊当当京东互动出版网淘宝等各大书店上架
- 机器学习基石PLA相关
- relocation R_X86_64_PC32 against symbol ff_pw_9 can not be used when making a shared object
- 数据集:男女身高体重(二维)
- .mmap文件如何打开
- 正点原子STM32串口通讯实验详解
- 数值计算原理_数值方法中的有限元法、有限差分法、有限体积法的区别
- php 按指定长度分割字符串,php实现将字符串按照指定距离进行分割的方法
- vue 中 axios的post请求,415错误
- 2月29日,四年一遇的日子!
- 世界上最早的手动计算机,世界上第一台电子计算机诞生于多少年,名字叫做什么...
- mysql的tps是什么意思_Mysql数据库的QPS和TPS的意义和计算方法
- FastDFS安装步骤
- android刷机包基带,手机刷机有必要刷底包基带吗?刷安卓机中基带/底包/固件详解...
热门文章
- 使用fswatch工具进行golang的热编译
- Cisco2811基本操作
- Windows 2003 系统应用故障的分析
- DateChooser控件发布ASP.NET 2.0新版(我的ASP.NET 2.0控件开发书的第二个阶段项目)[请大家一定注意版本的更新,下载最新版]...
- WordCount程序
- UVA 10214 Trees in a Wood
- 《Hadoop技术详解》一导读
- 平台数据库导入导出快捷工具说明
- 二级联动菜单,简单实现
- 今天用GRID感觉它严重缺少灵活性