国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

166. Fraction to Recurring Decimal

Fundebug / 564人閱讀

摘要:題目解答看的代碼如下判斷正負性加入整數部分加入小數部分記錄下已經出現過的當有重復的時候,即從前一個開始到當前用包含進去

題目:
Given two integers representing the numerator and denominator of a fraction, return the fraction in string format.

If the fractional part is repeating, enclose the repeating part in parentheses.

For example,

Given numerator = 1, denominator = 2, return "0.5".
Given numerator = 2, denominator = 1, return "2".
Given numerator = 2, denominator = 3, return "0.(6)".

解答:
看的discussion, 代碼如下:

public String fractionToDecimal(int numerator, int denominator) {
    if (numerator == 0) return "0";
    
    StringBuilder sb = new StringBuilder();
    //判斷正負性
    sb.append((numerator > 0) ^ (denominator > 0) ? "-" : "");
    
    long num = Math.abs((long)numerator);
    long deno = Math.abs((long)denominator);
    //加入整數部分
    sb.append(num / deno);
    num %= deno;
    if (num == 0) {
        return sb.toString();
    }
    
    //加入小數部分
    sb.append(".");
    //記錄下已經出現過的numerator,當有重復的時候,即從前一個index開始到當前用“()”包含進去
    Map map = new HashMap();
    map.put(num, sb.length());
    while (num != 0) {
        num *= 10;
        sb.append(num / deno);
        num %= deno;
        if (map.containsKey(num)) {
            int index = map.get(num);
            sb.insert(index, "(");
            sb.append(")");
            break;
        } else {
            map.put(num, sb.length());
        }
    }
    return sb.toString();
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64871.html

相關文章

  • [Leetcode] Fraction to Recurring Decimal 分數轉為循環小數

    摘要:最新解法及思路哈希表法復雜度時間空間思路整數部分很好處理,只要注意正負號的區分就行了,但是如何處理小數部分呢。這里我們可以用一個哈希表記錄每次的余數,如果余數出現重復的時候,說明就產生循環了。 Fraction to Recurring Decimal 最新解法及思路:https://yanjia.me/zh/2018/11/... Given two integers repres...

    desdik 評論0 收藏0
  • [HackerRank] Plus Minus

    Problem Given an array of integers, calculate which fraction of its elements are positive, which fraction of its elements are negative, and which fraction of its elements are zeroes, respectively. Pri...

    leeon 評論0 收藏0
  • Python標準庫---10、內置類型:數字類型

    摘要:上一篇文章標準庫內置類型邏輯值檢測布爾運算比較下一篇文章標準庫內置類型迭代器類型序列類型數字類型存在三種不同的數字類型整數浮點數和復數。標準庫包含附加的數字類型,如表示有理數的以及以用戶定制精度表示浮點數的。 上一篇文章:Python標準庫---9、內置類型:邏輯值檢測、布爾運算、比較下一篇文章:Python標準庫---11、內置類型:迭代器類型、序列類型 數字類型 --- int,...

    NotFound 評論0 收藏0
  • [Learning Python] Chapter 5 Numeric Types

    摘要:,可以用十進制十六進制八進制二進制來表示。由實數虛數組成。,在中,八進制可以以開頭,但是在中,不能以開頭,一定要以或者開頭,位的運算表示位向左移動表示位向右移動表示或運算表示運算表示異或運算兩者不同為,相同為可以用方法計算二進制數有多少位。 1, 在Python 2.x 中。Python的integer,有兩種類型,normal和long。Normal通常是32位的。Long表示無限精...

    yuxue 評論0 收藏0
  • 【譯】 JavaScript中按位操作符的有趣應用

    摘要:檢查設定位操作符還有一些其他有用的位屏蔽應用。請注意,位掩碼中的位將有效地關閉十進制數中的相應位,因為。 原文標題:Interesting use cases for JavaScript bitwise operators原文地址:https://blog.logrocket.com/in... 本文首發于公眾號:符合預期的CoyPan JavaScript提供了幾種運算符,可以對...

    oneasp 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<