题目来源:
leetcode题目,网址:2048. 下一个更大的数值平衡数 - 力扣(LeetCode)
解题思路:
从 n+1 开始暴力遍历即可。
解题代码:
class Solution {
public:bool isNumericallyBalanced(int n){if(n==0){return false;}vector<int> cnt(10,0);while(n!=0){cnt[n%10]++;n=n/10;}for(int i=0;i<cnt.size();i++){if(cnt[i]!=0 && cnt[i]!=i)return false;}return true;}int nextBeautifulNumber(int n) {long long res=n+1;while(!isNumericallyBalanced(res)){res++;}return res;}};
总结:
注意 0~10^6 是 n 的取值范围,不是结果的范围即可。
官方题解给出的两种解法是枚举和打表+二分。