老卫带你学---华为机试(17.坐标移动)

2023-11-03

华为机试(17.坐标移动)

问题:

题目描述
开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。

输入:

合法坐标为A(或者D或者W或者S) + 数字(两位以内)

坐标之间以;分隔。

非法坐标点需要进行丢弃。如AA10; A1A; % ; YAD; 等。

下面是一个简单的例子 如:

A10;S20;W10;D30;X;A1A;B10A11;;A10;

处理过程:

起点(0,0)

  • A10 = (-10,0)

  • S20 = (-10,-20)

  • W10 = (-10,-10)

  • D30 = (20,-10)

  • x = 无效

  • A1A = 无效

  • B10A11 = 无效

  • 一个空 不影响

  • A10 = (10,-10)

结果 (10, -10)

注意请处理多组输入输出

输入描述:
一行字符串

输出描述:
最终坐标,以,分隔

示例1
输入

A10;S20;W10;D30;X;A1A;B10A11;;A10;

输出

10,-10

解决:

思想:

  • 首先将异常值去掉(长度小于2的,长度大于3的,首字符不是字母的,后面的不是数字的)
  • 按照题目要求,对x,y进行加减操作

python 代码:

import sys


while True:
    line=sys.stdin.readline()
    if line=="":
        break
    line=line.split(";")
    x,y=0,0
    for i in line:
        if(len(i)<2 or len(i)>3):
            continue
        elif(not str(i[0]).isalpha()):
            continue
        elif (not str(i[1:]).isdigit()):
            continue
        else:
            if(i[0]=="A"):
                x-=int(i[1:])
            if(i[0]=="D"):
                x+=int(i[1:])
            if (i[0] == "W"):
                y += int(i[1:])
            if (i[0] == "S"):
                y -= int(i[1:])
    print(str(x)+","+str(y))

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

老卫带你学---华为机试(17.坐标移动) 的相关文章

  • 华为OD机试-求满足要求的最长子串

    题目描述 给定一个字符串 只包含字母和数字 按要求找出字符串中的最长 连续 子串的长度 字符串本身是其最长的子串 子串要求 1 只包含1个字母 a z A Z 其余必须是数字 2 字母可以在子串中的任意位置 如果找不到满足要求的子串 如全是
  • 华为OD机试 Python [周末爬山]

    描述 小明打算周末去爬山 有一份山的地图 上面用数字表示山的高度 0表示平地 1至9表示不同的山峰高度 小明每次移动只能上下左右移动一格 并且山峰高度差不能超过k 现在他从地图的左上角出发 你能帮他找出他能爬到的最高的山峰是多高吗 还有 他
  • 华为od机试 C++ 【计算最少步数】

    题目 小明计划在周末去爬山 他有一份包含山峰高度的地图 其中 0 代表平地 而 1 到 9 表示不同的山峰高度 小明可以向上 下 左或右移动一步 但是 由于他不想爬得太累 他决定只在高度差不超过 k 的地方移动 现在他站在地图的左上角 你能
  • 2023华为od机试真题B卷Python【矩阵里的非一元素】

    题目 假设存在一个m n的二维数组 其成员取值范围为0 1和2 1具有同化特性 它具体的同花步骤是 每经过1秒 如果其上下左右值为0 那么修改为1 而值为2的元素不会有任何变化 初始时 将数组的 0 0 元素修改为1 经过足够长的时间后 需
  • 华为OD机试 Java 实现【求int型正整数在内存中存储时1的个数】【牛客练习题 HJ15】,附详细解题思路

    一 题目描述 输入一个 int 型的正整数 计算出该 int 型数据在内存中存储时 1 的个数 数据范围 保证在 32 位整型数字范围内 二 输入描述 输入一个整数 int类型 三 输出描述 这个数转换成2进制后 输出1的个数 四 解题思路
  • 华为OD机试 C++【代表团坐车】

    题目 一场大会上 有好几个代表团同时到达 接待处的问题是 只有一辆车去接 而这车的座位是有限的 你的任务是帮助接待员算出 有多少种方法可以让这车的座位恰好坐满 不多也不少 限制条件 每个代表团的人数都不会超过车的总座位数 每个代表团的人数和
  • 华为OD机试 C++ 去除多余空格

    题目 你需要写一个功能 它能处理一段文本 去除其中不必要的空格 但是如果这些空格被一对单引号包围起来 就保留它们不变 同时 你还要调整一些特定词汇的位置 这些词汇的位置会以坐标的方式给出 坐标要基于新的文本 特别注意 关键词的位置一定不是空
  • 华为机试-----集五福作为近年来大家喜闻乐见迎新春活动,集合爱国福、富强福、和谐福、友善福、敬业福即可分享超大红包

    题目 以0和1组成的长度为5的字符串代表每个人所得到的福卡 每一位代表一种福卡 1表示已经获得该福卡 单类型福卡不超过1张 随机抽取一个小于10人团队 求该团队最多可以集齐多少套五福 输入描述 输入若干个 11010 00110 的由0 1
  • 华为OD机试真题-开心消消乐【2023.Q1】

    题目描述 给定一个N行M列的二维矩阵 矩阵中每个位置的数字取值为0或1 矩阵示例如 1100 0001 0011 1111 现需要将矩阵中所有的1进行反转为0 规则如下 1 当点击一个1时 该1便被反转为0 同时相邻的上 下 左 右 以及左
  • 2023华为OD机试真题Python实现【动态规划/找出重复代码】

    题目描述 小明负责维护项目下的代码 需要查找出重复代码 用以支撑后续的代码优化 请你帮助小明找出重复的代码 重复代码查找方法 以字符串形式给出两行代码 字符审长度1 lt length lt 100 由英文字母 数字和空格组成 找出两行代码
  • 华为OD机试 C++ 【报文重排序】

    题目 你手里有一堆乱七八糟的消息片段 每个片段后面都跟着一个数字 那个数字就像是每个片段的编号 你需要按照这些数字 将消息片段整合成一个完整的消息 并把那些数字扔掉 输入 第一行告诉你有几个消息片段 记作N 0 lt N 1000 第二行就
  • 华为OD机试 C++ 阿里巴巴找黄金宝箱(I)

    题目 阿里巴巴发现了一排宝箱 每个宝箱上都标有一个数字 黄金宝箱是这样一个特殊的宝箱 它前面所有宝箱的数字之和等于它后面所有宝箱的数字之和 如果第一个或最后一个宝箱是黄金宝箱 那它只需要考虑一边的和是否为0 请帮助阿里巴巴找出这个黄金宝箱
  • 华为od机试 Python【快递装载】

    前言 本题使用python解答 如果需要Java版本 请参考 点我 题目 快递需要按照一定的规则装载 所有的快递放在长方体的盒子当中 我们的需要是尽可能装载更多的快递 并且不能让货车超载 需要计算最多能装多少个快递 快递数最多1000个 货
  • 【华为OD统一考试B卷

    在线OJ 已购买本专栏用户 请私信博主开通账号 在线刷题 运行出现 Runtime Error 0Aborted 请忽略 华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一
  • 2023华为od机试 Java【最长公共后缀】

    题目 我们现在要实现一个功能找到字符串数组 中的最长公共后缀如果不存在公共后缀 abc bbc c 输出描述 c 示例1 输入 abc bbc c 输出 c 说明 返回公共后缀 c 示例2 输入 aa bb cc 输出 Zero 说明 不存
  • 2023华为OD机试真题Java实现【士兵过河/动态规划】

    题目内容 一支N个士兵的军队正在趁夜色逃亡 途中遇到一条湍急的大河 敌军在T的时长后到达河面 没到过对岸的士兵都会被消灭 现在军队只找到了1只小船 这船最多能同时坐上2个士兵 1 当1个士兵划船过河 用时为 a i 0 lt i lt N
  • 华为OD机试 C++ [周末爬山]

    题目 小明打算周末去爬山 有一份山的地图 上面用数字表示山的高度 0表示平地 1至9表示不同的山峰高度 小明每次移动只能上下左右移动一格 并且山峰高度差不能超过k 现在他从地图的左上角出发 你能帮他找出他能爬到的最高的山峰是多高吗 还有 他
  • 华为od机试 Java 【编码方式】

    题目 你需要创建一个特殊的整数编码程序 在这个程序中 数字较小时 它的编码占用的空间也应更小 你的任务是根据以下规则将一个整数转换为一个特殊的编码字符串 将整数转换为它的二进制形式 从右到左每7位组成一个编码单元 在每个编码单元的前面添加一
  • 华为机试 统计字符串中最长的数字串及统计字符串中字母出现最多的次数

    不多说 上代码 package com it thread import java util public class SoftTest public static void main String args Scanner sc new
  • 华为OD机试 Java 实现【扑克牌大小】【牛客练习题 HJ88】,附详细解题思路

    一 题目描述 扑克牌游戏大家应该都比较熟悉了 一副牌由54张组成 含3 A 2各4张 小王1张 大王1张 牌面从小到大用如下字符和字符串表示 其中 小写joker表示小王 大写JOKER表示大王 3 4 5 6 7 8 9 10 J Q K

随机推荐

  • Python和OpenCV视觉图像处理

    特点 OpenCV 3 是用于计算机视觉 机器学习和图像处理的原生跨平台库 OpenCV 方便的高级 API 隐藏了非常强大的内部结构 旨在提高计算效率 可以利用多核和 GPU 处理 学习如何通过操作像素来处理图像并使用直方图分析图像 展示
  • 第14.13节 BeautifulSoup的其他功能导览

    前面 第14 9节 Python中使用urllib request BeautifulSoup获取url访问的基本信息 第14 10节 Python中使用BeautifulSoup解析http报文 html标签相关属性的访问 和 第14 1
  • Python pandas数据分析:电商客户价值分析

    嗨害大家好鸭 我是芝士 1 RFM 客户价值模型介绍 RFM模型是衡量客户价值和客户创造利益能力的重要工具和手段 在众多的客户关系管理 CRM 的分析模式中 RFM模型是被广泛提到的 该机械模型通过一个客户的近期购买行为 购买的总体频率以及
  • nodejs 读取文件中的几行

    最近遇到了这样的问题 如何每次从一个文件里面依次读里面的几行 对nodejs提供的readline和一些三方npm例如lineReader不满意 就自己实现一个简易版本 var fs require fs var data fs readF
  • Spark服务启动的一些总结

    1 我理解常用的Spark部署方式有三种 1 本地服务 就是所谓的local 在IDE上本地跑程序 用于调试 2 Standalone 使用自己的master worker进行服务的调度 脱离yarn的资源管理 3 Spark on yar
  • Java 转 C++ 那些事

    前提纪要 虽说编程语言只是承载思想的一种媒介 但是每种编程语言有自己的设计哲学 所以在实现自己思想的时候 也需要遵循该门语言的理念才行 截止 2022 年 07 月 12 日本人最大的体验是 Java 这门语言存在大量的过度封装 所以能封装
  • c#复习题2(含答案及解析)

    1 单选题 ArrayList集合的 属性表示集合中实际包含的元素数 A Capacity B Count C Total D Length 正确答案 B 解析 ArrayList集合的 Capacity属性表示它们所封装的Object 数
  • 【密码学】破解RSA密码(Python代码实现)

    题目 已知有人写了如下的代码 并将生成的 n e c 以及 n2 e2 c2 p2 1 q2 1 输出 from Crypto Util number import def ef p getPrime 512 q getPrime 512
  • 云开发初探 —— 更简便的小程序开发模式

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由heyli发表于云 社区专栏 小程序诞生以来 业界关注小程序前端的技术演进较多 因此众多小程序前端的框架 工具也应运而生 前端开发效率大大提高 而后台的开发技术则关注不多 痛点
  • js 解密

    Ai Chat sbaliyun com 在分析接口的时候 我们看到请求做了加密 查看事件我们发信啊了方法 callCHATGPT 得到 callCHATGPT 的代码 async function callCHATGPT var resp
  • 在概念堆里理解什么是智能SOA

    今年在继7月北京成功举办SOA与企业成长高峰论坛之后 在这个初冬的季节 IBM再次携众位专家11月15号在上海隆重举行了 IBM 2007 SOA创新高峰论坛 并且在这次峰会上首发了基于全球5700家SOA客户实施经验之上总结出的一套指导客
  • 实时查询与检测域名是否被微信封杀的核心代码和原理

    微信官方在对微信中推广活动的第三方网页内容管控越来越严格 如果活动效果稍微好一些 自己的网址域名可能就会被封杀 用户就打不开分享页面 很多人就是因为没有及时知道域名在微信中的状况 不知道什么时候被封的 然后导致损失惨重 在网上搜索了很多相关
  • 【Java基础教程】(三十六)常用类库篇 · 第六讲:数学运算类——全面讲解Java数学计算支持类库,BigDecimal、Math、Random、DecimalFormat...~

    Java基础教程之常用类库 数学运算类 1 概念 数学运算类汇总 2 优势和缺点 3 使用 3 1 各数学计算支持类使用案例 3 2 Math类 3 3 BigDecimal类 3 4 Random类 3 5 DecimalFormat类
  • Thymeleaf 对象空值处理

    前端代码 单例实体对象空值处理 div div class form group col md 6 div div
  • 小程序picker 多列选择详解

    需求 选择左边的选项 右边会显示对应的数据 如果你的数据和官方文档一样 数组套数组的形式 那直接复制复制就行了 这篇文章主要讲 数据是数组里面套对象的这种情况 我的数据结构如下 这就用用到 range key 属性 首先 通过 range
  • 【ubuntu】【rabbitmq】ubuntu 安装 rabbitmq

    文章目录 一 安装 erlang 二 添加公钥 三 更新软件包 可选 四 安装 RabbitMQ 五 RabbitMQ 状态管理 六 安装 web 插件 七 远程登录 web端 八 添加自定义 VHOST 及分配权限 一 安装 erlang
  • Java 使用LocalDate获取上周时间、本月时间等

    获取当前时间 LocalDate currentDate LocalDate now 获取当前日期所在的星期几 DayOfWeek currentDayOfWeek currentDate getDayOfWeek 计算需要减去的天数 in
  • 迟到的Pairwork工作总结 - by Glede

    迟到的总结 By Glede 队友连昭鹏的总结 http www cnblogs com lzplzp archive 2012 10 22 2732946 html 我们一开始交流的时候 就决定基本模仿生活中的电梯运行过程来设计程序 生活
  • 多列堆积柱形图怎么做_Excel两组数据做对比,用左右对比图才好看,操作简单又美观...

    我们都知道在Excel中 展示多组据的时候 可以使用图表来进行演示 Excel图表展示数据既直观 看起来也显得非常的大气 而一般人通常都是用柱形图 折线图等图表来展示 今天我们教大家一种特殊的图表 如何运用左右对比图来展示2组数据 如上图所
  • 老卫带你学---华为机试(17.坐标移动)

    华为机试 17 坐标移动 问题 题目描述 开发一个坐标计算工具 A表示向左移动 D表示向右移动 W表示向上移动 S表示向下移动 从 0 0 点开始移动 从输入字符串里面读取一些坐标 并将最终输入结果输出到输出文件里面 输入 合法坐标为A 或