[leetcode-556-Next Greater Element III]
Posted hellowOOOrld
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[leetcode-556-Next Greater Element III]相关的知识,希望对你有一定的参考价值。
Given a positive 32-bit integer n, you need to find the smallest 32-bit integer which has exactly the same digits existing in
the integer n and is greater in value than n. If no such positive 32-bit integer exists, you need to return -1.
思路:
求元素的全排列,然后选出比n大的所有元素中最小的那个。
vector<int>digit; int backup = n; while(n) { digit.push_back(n%10); n/=10; } sort(digit.begin(),digit.end()); long long result = INT_MAX +1LL; do { long long temp =0; for(int i=0;i<digit.size();i++) { temp = temp*10 + digit[i]; } if (temp > backup) result = min(result, temp); } while (next_permutation(digit.begin(), digit.end())); if(result<=INT_MAX) return result; else return -1;
以上是关于[leetcode-556-Next Greater Element III]的主要内容,如果未能解决你的问题,请参考以下文章
leetcode556—— Next Greater Element III (JAVA)
[LeetCode] 556. Next Greater Element III
Leetcode 556. Next Greater Element III
Calculated padded input size per channel: (3 x 3). Kernel size: (5 x 5). Kernel size can‘t be greate