成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

166. Fraction to Recurring Decimal

Fundebug / 576人閱讀

摘要:題目解答看的代碼如下判斷正負(fù)性加入整數(shù)部分加入小數(shù)部分記錄下已經(jīng)出現(xiàn)過的當(dāng)有重復(fù)的時(shí)候,即從前一個(gè)開始到當(dāng)前用包含進(jìn)去

題目:
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();
    //判斷正負(fù)性
    sb.append((numerator > 0) ^ (denominator > 0) ? "-" : "");
    
    long num = Math.abs((long)numerator);
    long deno = Math.abs((long)denominator);
    //加入整數(shù)部分
    sb.append(num / deno);
    num %= deno;
    if (num == 0) {
        return sb.toString();
    }
    
    //加入小數(shù)部分
    sb.append(".");
    //記錄下已經(jīng)出現(xiàn)過的numerator,當(dāng)有重復(fù)的時(shí)候,即從前一個(gè)index開始到當(dāng)前用“()”包含進(jìn)去
    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();
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/64871.html

相關(guān)文章

  • [Leetcode] Fraction to Recurring Decimal 分?jǐn)?shù)轉(zhuǎn)為循環(huán)小數(shù)

    摘要:最新解法及思路哈希表法復(fù)雜度時(shí)間空間思路整數(shù)部分很好處理,只要注意正負(fù)號的區(qū)分就行了,但是如何處理小數(shù)部分呢。這里我們可以用一個(gè)哈希表記錄每次的余數(shù),如果余數(shù)出現(xiàn)重復(fù)的時(shí)候,說明就產(chǎn)生循環(huán)了。 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標(biāo)準(zhǔn)庫---10、內(nèi)置類型:數(shù)字類型

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

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

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

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

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

    oneasp 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<