LeetCode 3516.找到最近的人:計算絕對值大小

【LetMeFly】3516.找到最近的人:計算絕對值大小

力扣題目鏈接:https://leetcode.cn/problems/find-closest-person/

給你三個整數 xyz,表示數軸上三個人的位置:

  • x 是第 1 個人的位置。
  • y 是第 2 個人的位置。
  • z 是第 3 個人的位置,第 3 個人?不會移動?

第 1 個人和第 2 個人以?相同?的速度向第 3 個人移動。

判斷誰會?先?到達第 3 個人的位置:

  • 如果第 1 個人先到達,返回 1 。
  • 如果第 2 個人先到達,返回 2 。
  • 如果兩個人同時到達,返回 0?

根據上述規則返回結果。

?

示例 1:

輸入: x = 2, y = 7, z = 4

輸出: 1

解釋:

  • 第 1 個人在位置 2,到達第 3 個人(位置 4)需要 2 步。
  • 第 2 個人在位置 7,到達第 3 個人需要 3 步。

由于第 1 個人先到達,所以輸出為 1。

示例 2:

輸入: x = 2, y = 5, z = 6

輸出: 2

解釋:

  • 第 1 個人在位置 2,到達第 3 個人(位置 6)需要 4 步。
  • 第 2 個人在位置 5,到達第 3 個人需要 1 步。

由于第 2 個人先到達,所以輸出為 2。

示例 3:

輸入: x = 1, y = 5, z = 3

輸出: 0

解釋:

  • 第 1 個人在位置 1,到達第 3 個人(位置 3)需要 2 步。
  • 第 2 個人在位置 5,到達第 3 個人需要 2 步。

由于兩個人同時到達,所以輸出為 0。

?

提示:

  • 1 <= x, y, z <= 100

解題方法:數學

速度相同,路程約長到達越晚。

a和b的路程 = a和b坐標之差的絕對值。

  • 時間復雜度O(1)O(1)O(1)
  • 空間復雜度O(1)O(1)O(1)

AC代碼

C++
/** @Author: LetMeFly* @Date: 2025-09-04 13:33:33* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-09-04 13:36:19*/
class Solution {
public:int findClosest(int x, int y, int z) {int diff = abs(x - z) - abs(y - z);return diff ? diff > 0 ? 2 : 1 : 0;}
};
Python
'''
Author: LetMeFly
Date: 2025-09-04 13:33:33
LastEditors: LetMeFly.xyz
LastEditTime: 2025-09-04 13:37:22
'''
class Solution:def findClosest(self, x: int, y: int, z: int) -> int:diff = abs(x - z) - abs(y - z)return 2 if diff > 0 else 1 if diff else 0
Go
/** @Author: LetMeFly* @Date: 2025-09-04 13:33:33* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-09-04 13:39:11*/
package mainfunc abs3516(a int) int {if a < 0 {return -a}return a
}func findClosest(x int, y int, z int) int {diff := abs3516(x - z) - abs3516(y - z)if diff == 0 {return 0} else if diff > 0 {return 2}return 1
}
Rust
/** @Author: LetMeFly* @Date: 2025-09-04 13:33:33* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-09-04 13:40:19*/
impl Solution {pub fn find_closest(x: i32, y: i32, z: i32) -> i32 {let diff: i32 = (x - z).abs() - (y - z).abs();if diff == 0 {return 0;  // 這里必須帶上return} else if diff > 0 {return 2;}1}
}

同步發文于CSDN和我的個人博客,原創不易,轉載經作者同意后請附上原文鏈接哦~

千篇源碼題解已開源

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/921193.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/921193.shtml
英文地址,請注明出處:http://en.pswp.cn/news/921193.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【面試】MySQL 面試常見優化問題

1. 為什么要建索引&#xff1f;索引一定能提高性能嗎&#xff1f;場景&#xff1a;一個表有上千萬數據&#xff0c;查詢 SELECT * FROM user WHERE age25;。問題&#xff1a;沒有索引時會全表掃描&#xff0c;性能差。解決方案&#xff1a;給 age 建立普通索引&#xff0c;加快…

Access開發導出PDF的N種姿勢,你get了嗎?

目錄 基礎篇&#xff1a;一行代碼搞定 實戰篇&#xff1a;讓導出更智能 進階篇&#xff1a;用戶體驗升級 總結 hi&#xff0c;大家好呀&#xff01; 今天我們來聊聊一個非常實用的功能——如何用VBA將Access中的數據導出為PDF。 相信很多朋友在日常工作中都遇到過這樣的需…

JavaAI炫技賽:電商系統商品管理模塊的創新設計與實踐探索

一、引言電商行業的競爭日益激烈&#xff0c;電商系統商品管理模塊的高效性、智能化程度成為企業提升競爭力的關鍵因素。Java 作為企業級開發的主流語言&#xff0c;憑借其穩定性和強大的生態系統&#xff0c;在電商系統開發中占據重要地位。而 AI 技術的融入&#xff0c;為商品…

關于如何在PostgreSQL中調整數據庫參數和配置的綜合指南

關于如何在PostgreSQL中調整數據庫參數和配置的綜合指南 PostgreSQL是一個非常通用的數據庫系統,能夠在低資源環境和與各種其他應用程序共享的環境中高效運行。為了確保它將在許多不同的環境中正常運行,默認配置非常保守,不太適合高性能生產數據庫。加上地理空間數據庫具有…

wps的excel如何轉為谷歌在線表格

1.?打開 Google Sheets&#xff08;sheets.google.com&#xff09;。 2.?新建一個空白表格。3.?點擊菜單 文件 → 導入 (File → Import)。4.?選擇在 WPS 保存好的 .xlsx 文件上傳。5.?選擇 “新建表格” 或 “替換當前表格”&#xff0c;就能直接在 Google Sheets 使用注…

貓頭虎AI 薦研|騰訊開源長篇敘事音頻生成模型 AudioStory:統一模型,讓 AI 會講故事

&#x1f42f;貓頭虎薦研&#xff5c;騰訊開源長篇敘事音頻生成模型 AudioStory&#xff1a;統一模型&#xff0c;讓 AI 會講故事 大家好&#xff0c;我是貓頭虎 &#x1f42f;&#x1f989;&#xff0c;又來給大家推薦新鮮出爐的 AI 開源項目&#xff01; 這次要聊的是騰訊 A…

收藏!VSCode 開發者工具快捷鍵大全

一、文件操作快捷鍵1. 打開與關閉文件Ctrl O&#xff08;Windows/Linux&#xff09;或 Command O&#xff08;Mac&#xff09;&#xff1a;打開文件&#xff0c;可以通過輸入文件名快速查找并打開相應文件。Ctrl W&#xff08;Windows/Linux&#xff09;或 Command W&#…

Simulations RL 平臺學習筆記

1. 選擇標準 1.1 開源項目&#xff0c;&#x1f31f;star數量越多越好 2. 常見平臺 2.1 &#x1f31f;18.6k ML-Agents&#xff1a;基于Unity實現 2.2 &#x1f31f;1.2k Godot RL Agents

【國內電子數據取證廠商龍信科技】IOS 逆向脫殼

我們都知道&#xff0c;大多數的 APP 在開發的時候一般都會加上一層殼&#xff0c;例如 愛加密、梆梆、360、網易易盾等等。那 APK 的脫殼我們見得多了&#xff0c;那 IOS 逆向脫殼又是怎樣子的呢&#xff1f;首先咱們先了解一下為什么要砸殼&#xff0c;因為 IOS 開發者開發軟…

基于STM32單片機溫濕度PM2.5粉塵甲醛環境質量wifi手機APP監測系統

1 基于STM32單片機溫濕度PM2.5粉塵甲醛環境質量WiFi手機APP監測系統 本系統旨在實現對環境中溫度、濕度、PM2.5粉塵濃度以及甲醛濃度的實時監測&#xff0c;并通過WiFi技術將數據傳輸至手機APP端&#xff0c;實現移動化與可視化的環境質量檢測。系統在硬件上主要依賴STM32單片…

用C++實現日期類

在上學的時候&#xff0c;總是在計算還有多少天放假&#xff1b;在上班的時候&#xff0c;總是在計算還有多久發工資&#xff1f;我們一般通過日歷得到結果&#xff0c;那自己能不能實現一些基本的功能呢&#xff1f;答案是可以的&#xff01;需要實現內容&#xff1a;1. 日期加…

百度網盤基于Flink的實時計算實踐

01 概覽 隨著數字化轉型的來臨&#xff0c;企業對于數據服務的實時化需求日益增長&#xff0c;在大規模數據和復雜場景的情況下&#xff0c;Flink在實時計算數據鏈路中扮演著極為重要的角色&#xff0c;本文介紹了網盤如何通過 Flink 構建實時計算引擎&#xff0c;從而提供高性…

【CMake】策略

目錄 一.CMake策略簡要理解 1.1.第一階段&#xff1a;童年時期&#xff08;舊行為&#xff0c;The "Old Way"&#xff09; 1.2.第二階段&#xff1a;成長與改進&#xff08;引入新行為&#xff0c;The "New Way"&#xff09; 1.3.第三階段&#xff1a;…

LLM中的function call

1. 概念 **Function Call&#xff08;函數調用&#xff09;**是指在編程中&#xff0c;程序可以通過調用預定義的函數來執行特定的操作。在LLM中&#xff0c;函數調用的概念擴展了模型的能力&#xff0c;使其不僅能夠生成文本&#xff0c;還能與外部系統進行交互。通過函數調用…

【系統架構設計(13)】項目管理上:盈虧平衡分析與進度管理

文章目錄零、核心思想&#xff1a;經濟性與時效性的動態平衡一、盈虧平衡分析&#xff1a;項目的經濟生命線1、核心公式與決策邏輯二、進度管理&#xff1a;項目的時效生命線1. **工作分解結構&#xff08;WBS&#xff09;**2. 進度管理流程3、關鍵路徑法關鍵路徑法&#xff08…

【SuperSocket 】利用 TaskCompletionSource 在 SuperSocket 中實現跨模塊異步處理客戶端消息

利用 TaskCompletionSource 在 SuperSocket 中實現跨模塊異步處理客戶端消息 在使用 SuperSocket 構建 TCP 服務時&#xff0c;我們經常會遇到這樣的需求&#xff1a; 服務端接收到客戶端數據后&#xff0c;需要將數據交給其他模塊處理處理完成后再將結果返回給調用模塊或客戶端…

《IC驗證必看|semaphore與mailbox的核心區別》

月薪30K驗證工程師必答&#xff1a;SystemVerilog中semaphore與mailbox的核心區別&#xff0c;及必須用semaphore的場景深度解析 在驗證工程師的技能體系里&#xff0c;線程同步與資源管控是區分“基礎會用”&#xff08;20K水平&#xff09;和“精通工程化”&#xff08;30K水…

Spring線程池ThreadPoolTaskExecutor?詳解

ThreadPoolTaskExecutor?寫法Bean(name "taskExecutor") public ThreadPoolTaskExecutor taskExecutor() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();executor.setCorePoolSize(8); // 8核CPU服務器建議值executor.setMaxPoolSize(…

Unity之安裝教學

UnityHub下載 下載官網地址&#xff1a;Unity Hub下載地址 打開網址右上角&#xff0c;登錄/注冊賬號 登錄完畢后&#xff0c;點擊下載 安裝Unity Hub 雙擊傻瓜式安裝 安裝完成 啟動UnityHub 雙擊啟動 左上角設置 設置中文 左上角登錄賬號 添加免費許可證 設置-許可證-添加 安裝…

Redis 集群模式與高可用機制

最近在準備面試&#xff0c;正把平時積累的筆記、項目中遇到的問題與解決方案、對核心原理的理解&#xff0c;以及高頻業務場景的應對策略系統梳理一遍&#xff0c;既能加深記憶&#xff0c;也能讓知識體系更扎實&#xff0c;供大家參考&#xff0c;歡迎討論。在分布式環境下&a…