給定兩個整數,分別表示分數的分子 numerator 和分母 denominator,以字串形式返回小數。
如果小數部分為迴圈小數,則將迴圈的部分括在括號內。
示例 1:
輸入: numerator =
1, denominator =
2輸出:
"0.5"
示例 2:
輸入: numerator =
2, denominator =
1輸出:
"2"
示例 3:
輸入: numerator =
2, denominator =
3輸出:
"0.(6)"
解題
求迴圈小數——即一位一位得到每一位的小數,當除數重複,說明出現迴圈小數;
分數的是有理數,分數不為無理數!
雜湊表記錄每次的除數,當除數與雜湊表內重複時,insert新增括號並返回;
邊界情況
(1)除數為0;
(2)被除數為0;
(3)異或判斷是否為一正一負,新增負號
(4)若迴圈除時,餘數為0,說明除盡,返回res即可;
注意點
class
solution
map[num]
=index++
; res.
(to_string
(num/den));
num%
=den;
}return res;;}
};
長整數轉化成16進製制字串
6 3 長整數轉化成16進製制字串 15 分 本題要求實現乙個將長整數轉化成16進製制字串的簡單重點內容函式。void f long int x,char p 其中x是待轉化的十進位製長整數,p指向某個字元陣列的首元素。函式f的功能是把轉換所得的16進製制字串寫入p所指向的陣列。16進製制的a f為...
字串的排列(16)
輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。1 分析 可以將字串分成兩部分,第乙個部分為首元素,第二部分為剩下的字串。然後將首元素分別與後面的其他元素進行調換。再用遞迴的方式來對...
C 拼接長字串
使用 string 類提供過載 方法拼接字串。示例 length 引數代表拼接的字串長度 void composelongstringwithoperator const unsigned int length,std string long string unsigned int length,s...