从1开始暴力比较:
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
for(int i = 1; i < Integer.MAX_VALUE; ++i){
if(!f(s, String.valueOf(i))){ //有一个数不够,就打印返回
System.out.println(i);
return;
}
}
}
static boolean f(String s, String n){
int[] v1 = new int[10]; //统计各数字的个数
int[] v2 = new int[10];
for(int i = 0; i < s.length(); ++i) v1[s.charAt(i) - '0']++;
for(int i = 0; i < n.length(); ++i) v2[n.charAt(i) - '0']++;
for(int i = 0; i < 10; ++i) if(v2[i] > v1[i]) return false;
return true;
}
}
京公网安备 11010502036488号