news 2026/6/9 16:44:44

华为OD机试 - 最小步数 (C++ Python JAVA JS GO)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为OD机试 - 最小步数 (C++ Python JAVA JS GO)

最小步数

2025华为OD机试 - 华为OD上机考试 100分题型

华为OD机试真题目录点击查看: 华为OD机试真题题库目录|机考题库 + 算法考点详解

题目描述

求从坐标零点到坐标点n的最小步数,一次只能沿横坐标轴向左或向右移动 2 或 3。

注意:途径的坐标点可以为负数

输入描述

坐标点n,1 <= n <= 10^9

输出描述

输出从坐标零点移动到坐标点n的最小步数

用例1

输入

4

输出

2

说明

从坐标零点移动到4,最小需要两步,即右移2,再右移2

题解

思路:数学规律

  1. 本题只会存在两种情况, 对于n == 1时的情况为{-2,3},需要两步。
  2. 对于n >=2的情况,存在规律需要的步数为ceil(n /3)向上取整
  3. 明白上面规律之后,这个题就很简单了。

c++

#include<iostream> #include<vector> #include<string> #include <utility> #include <sstream> #include<algorithm> #include<cmath> #include<map> #include<cmath> using namespace std; int main() { int n ; cin >> n; // -2 3 if (n == 1) { cout << 2; } else { //cout << (int)ceil(1.0 * n / 3); cout << (n + 2) / 3; } return 0; }

JAVA

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); // -2 3 if (n == 1) { System.out.print(2); } else { // cout << (int)ceil(1.0 * n / 3); System.out.print((n + 2) / 3); } } }

Python

n=int(input())# -2 3ifn==1:print(2)else:# print(math.ceil(1.0 * n / 3))print((n+2)//3)

JavaScript

constreadline=require('readline');constrl=readline.createInterface({input:process.stdin,output:process.stdout,terminal:false});rl.on('line',line=>{letn=parseInt(line.trim());// -2 3if(n===1){console.log(2);}else{console.log(Math.floor((n+2)/3));}});

Go

packagemainimport"fmt"funcmain(){varnintfmt.Scan(&n)// -2 3ifn==1{fmt.Print(2)}else{// fmt.Print(int(math.Ceil(float64(n) / 3)))fmt.Print((n+2)/3)}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 10:51:02

Draw.io Mermaid插件终极指南:3步实现文本可视化高效创作

Draw.io Mermaid插件终极指南&#xff1a;3步实现文本可视化高效创作 【免费下载链接】drawio_mermaid_plugin Mermaid plugin for drawio desktop 项目地址: https://gitcode.com/gh_mirrors/dr/drawio_mermaid_plugin 还在为手动绘制复杂图表而烦恼吗&#xff1f;Draw…

作者头像 李华
网站建设 2026/6/9 16:46:17

Xcode调试救星:iOS设备支持文件快速部署全攻略

Xcode调试救星&#xff1a;iOS设备支持文件快速部署全攻略 【免费下载链接】iOSDeviceSupport All versions of iOS Device Support 项目地址: https://gitcode.com/gh_mirrors/ios/iOSDeviceSupport 问题诊断室&#xff1a;识别调试失败的典型症状 当你连接iOS设备到X…

作者头像 李华
网站建设 2026/6/9 22:49:40

STL文件预览神器:告别盲目点击,3D模型一目了然

STL文件预览神器&#xff1a;告别盲目点击&#xff0c;3D模型一目了然 【免费下载链接】stl-thumb Thumbnail generator for STL files 项目地址: https://gitcode.com/gh_mirrors/st/stl-thumb 你是否曾经在成堆的STL文件中迷失方向&#xff1f;面对文件名相似的3D模型…

作者头像 李华
网站建设 2026/6/10 12:27:03

深度解析:AI驱动的智能数据库优化框架架构与实践指南

深度解析&#xff1a;AI驱动的智能数据库优化框架架构与实践指南 【免费下载链接】LXMusic音源 lxmusic&#xff08;洛雪音乐&#xff09;全网最新最全音源 项目地址: https://gitcode.com/guoyue2010/lxmusic- 你是否在为数据库性能瓶颈、查询响应缓慢而困扰&#xff1…

作者头像 李华
网站建设 2026/6/10 12:33:41

AppleRa1n完整教程:iOS激活锁绕过终极解决方案

AppleRa1n完整教程&#xff1a;iOS激活锁绕过终极解决方案 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否曾经面对一台被激活锁困住的iPhone&#xff0c;感到束手无策&#xff1f;或者购买二手…

作者头像 李华
网站建设 2026/6/10 14:17:18

B站4K视频下载终极指南:5分钟掌握高清内容永久保存技巧

B站4K视频下载终极指南&#xff1a;5分钟掌握高清内容永久保存技巧 【免费下载链接】bilibili-downloader B站视频下载&#xff0c;支持下载大会员清晰度4K&#xff0c;持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 想要永久收藏B站上…

作者头像 李华