博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
166. Fraction to Recurring Decimal
阅读量:5172 次
发布时间:2019-06-13

本文共 1489 字,大约阅读时间需要 4 分钟。

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)".

题目含义:计算两个数的除法,出现无限循环位置时,用括号括起来

1     public String fractionToDecimal(int numerator, int denominator) { 2         if (denominator ==0) return ""; 3         StringBuilder result = new StringBuilder(); 4         String sign = (numerator < 0 == denominator < 0 || numerator == 0) ? "" : "-"; 5         long num = Math.abs((long) numerator); 6         long den = Math.abs((long) denominator); 7         result.append(sign); 8         result.append(num / den); 9         long remainder = num % den;10         if (remainder == 0)11             return result.toString();12         result.append(".");13         HashMap
hashMap = new HashMap
();14 while (!hashMap.containsKey(remainder)) {15 hashMap.put(remainder, result.length());16 result.append(10 * remainder / den);17 remainder = 10 * remainder % den;18 }19 int index = hashMap.get(remainder);20 result.insert(index, "(");21 result.append(")");22 return result.toString().replace("(0)", ""); 23 }

 

转载于:https://www.cnblogs.com/wzj4858/p/7723041.html

你可能感兴趣的文章
java 为什么说有前途 ?
查看>>
下载远程文件
查看>>
jQuery两把利器
查看>>
汇编设计 实验5
查看>>
linux常见命令2
查看>>
如何把TOMCAT启动加到WIN的服务中
查看>>
Kotlin怎样使用Android的Dagger2
查看>>
十进制转换十六进制
查看>>
修改jupyter notebook的默认浏览器
查看>>
Hexagon Perplexagon
查看>>
C++读取INI文件
查看>>
spring-AOP(面向切面编程)-xml方式配置
查看>>
nagios插件nagiosql安装配置
查看>>
python mail
查看>>
rabbitmq的vhost与用户管理(转)
查看>>
php文件上传
查看>>
布局(左边的div随着右边div的高度变化而变化)
查看>>
REF01 From Data Privacy to Location Privacy: Models and Algorithms
查看>>
kubernetes(k8s)之K8s部署多种服务yaml文件
查看>>
学习一类树的计数问题和Prufer序列【BZOJ1430】小猴打架
查看>>