圖論進階應用 計算除法的值 Evaluate Division_Leetcode #399 精選75題

2024/02/07閱讀時間約 17 分鐘

題目敘述

圖目會給定我們一串已知變數作除法的值,以分子在前,分母在後的形式表達

要求我們針對未知的變數除法作計算以浮點數的形式返回答案;如果無解,返回-1.0


題目的原文敘述


測試範例

Example 1:

Input: equations = [["a","b"],["b","c"]], values = [2.0,3.0], queries = [["a","c"],["b","a"],["a","e"],["a","a"],["x","x"]]
Output: [6.00000,0.50000,-1.00000,1.00000,-1.00000]
Explanation:
Given: a / b = 2.0, b / c = 3.0
queries are: a / c = ?, b / a = ?, a / e = ?, a / a = ?, x / x = ?
return: [6.0, 0.5, -1.0, 1.0, -1.0 ]
note: x is undefined => -1.0

Example 2:

Input: equations = [["a","b"],["b","c"],["bc","cd"]], values = [1.5,2.5,5.0], queries = [["a","c"],["c","b"],["bc","cd"],["cd","bc"]]
Output: [3.75000,0.40000,5.00000,0.20000]

Example 3:

Input: equations = [["a","b"]], values = [0.5], queries = [["a","b"],["b","a"],["a","c"],["x","y"]]
Output: [0.50000,2.00000,-1.00000,-1.00000]

約束條件

Constraints:

  • 1 <= equations.length <= 20

已知的變數除法計算的條件介於1~20之間。

  • equations[i].length == 2

equations陣列內每個元素都是一組pair,以分子在前,分母在後的形式表達。

  • 1 <= Ai.length, Bi.length <= 5

已知的變數名稱長度最少是一個字元,最長5個字元。

  • values.length == equations.length

以知的除法答案 和 給定以知的變數除法計算一樣多。

  • 0.0 < values[i] <= 20.0

保證不會有除以零。另外,給定已知變數的除法答案大於0,小於等於20。

  • 1 <= queries.length <= 20

動態測試時,提問的除法數目介於1~20之間。

  • queries[i].length == 2
以行動支持創作者!付費即可解鎖
本篇內容共 6922 字、0 則留言,僅發佈於Leetcode 精選75題 上機考面試題 詳解你目前無法檢視以下內容,可能因為尚未登入,或沒有該房間的查看權限。
45會員
289內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言0
查看全部
發表第一個留言支持創作者!