leetcode:Fraction to Recurring …
来源:互联网 发布:睡了兄弟的女朋友知乎 编辑:程序博客网 时间:2024/05/16 12:03
Fraction to Recurring Decimal:
题目大意就是给定一个除数被除数,用字符串表示结果,小数循环部分用括号括起来,比如1/3=0.(3)
一开始想到用map储存状态,自然想到直接记录小数的数字,但不太方便。换个角度,我们来存储“状态”,也就是被除数(除数永远是恒定的),然后遇到重复的被除数,则说明开始循环。
思路是对的,连续wa的几次,总结原因还是没有一个清晰的流程图,所以以后写leetcode,一定要把程序流程图分析清楚,本题如下:
1、循环外部计算整数,然后进入循环
2、被除数乘10再除以除数,用一个index记录每个被除数对应的小数位置,每次被除数乘10,index+1。
3、被除数乘10,就变成了一个新的被除数,因此需要先判断是否重复,再把计算结果写入字符串
4、如果被除数乘10仍然小于除数,那么就继续乘10,但乘10之前需要在字符串中加个0,代表本数位的处理结果是0,然后再按照2中的流程走。
Queue Reconstruction by Height:
题目大意是,给定一个数列,如:[[7,0], [4,4], [7,1], [5,0], [6,1],[5,2]],第一个表示身高,第二个表示,在该人之前,有多少个身高大于等于他的。返回符合要求的数列。上例对应符合要求的数列是:[[5,0],[7,0], [5,2], [6,1], [4,4], [7,1]]。
思路是贪心,把原数列按照身高排序,相同身高按照个数从小到大排,然后从前往后逐个插入到ans数组中。这么做的原理在于,假如有[7,a]、[7,b],b>a,那么就把[7,a]先按照要求插入,插入[7,b]时,b有多大就从头往后数多少位,插入即可,因为在这之前插入ans的肯定都是身高大于7的数,或者个数小于b,那么无论如何,b前面的那些pair均是符合要求的。
另外,也在本题验证了,sort传递的谓词(第三个参数)对应的函数,其形参不一定要是引用
阅读全文
0 0
- leetcode:Fraction to Recurring …
- leetcode:Integer to Roman + Fin…
- poj 1980 Unit Fraction Partition…
- How to get a good idea to perfor…
- How to pass a hash to a subrouti…
- How to move LOB Data to Another …
- unable to create …
- OracleserviceSID to write to net…
- how to do with a slow oracle dat…
- Make sure to have the zlib libs …
- Make sure to have the zlib libs …
- How to Disable and Turn Off UAC …
- tomorrow I will have a trip to W…
- How to sign a Driver by Windows …
- How to got the Mac address from …
- yii2 Call to undefined functi…
- [leetcode] Fraction to Recurring Decimal
- LeetCode Fraction to Recurring Decimal
- leetcode:Divide Two Integers + …
- LINUXmint18.2添加国内源以及安装各种流行软件(网易云音乐,搜狗,谷歌浏览器,virtualbox虚拟机)
- leetcode:Next Permutation + Lon…
- C#枚举所有串口COM
- 数据库的锁表和解锁操作
- leetcode:Fraction to Recurring …
- leetcode:Single Number123 …
- leetcode:Linked List Random Node…
- leetcode:Shuffle an Array + Miss…
- leetcode:Integer to Roman + Fin…
- finetune入门,如何用已有的caffem…
- 009-logback中configuration的logger和root子节点
- 如何同时使用相同项目的两个分支
- 在Ubuntu上安装opencv