[leetcode] 最优除法 小思维
Posted PushyTao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[leetcode] 最优除法 小思维相关的知识,希望对你有一定的参考价值。
如果是仅有一个数的时候直接返回那个数即可
如果有两个数,答案就是“a/b”
如果是三个数以上
为了让结果最大,那么说要让被除数更小。在整数的情况下,除法只会让数越除越小,所以说把除了第一个数之外的所有数放在括号里,比如:
a/(b/c/d/…/f)
class Solution
public:
string optimalDivision(vector<int>& nums)
string ret = "";
int n = nums.size();
ret += to_string(nums[0]);
if(n == 1) return ret;
if (n > 1) ret += "/";
if (n > 2) ret += "(";
for(int i = 1;i <= n - 2;i ++)
ret += to_string(nums[i]);
ret += "/";
ret += to_string(nums[n-1]);
if(n > 2) ret += ")";
return ret;
;
以上是关于[leetcode] 最优除法 小思维的主要内容,如果未能解决你的问题,请参考以下文章