public class Exam1107 { static boolean[] broken = new boolean[10]; // 버튼이 고장났는지 확인하기 위한 배열 // true : 고장 false : 고장 X static int possible(int c) { // 채널의 길이를 구한다. if(c == 0) { if(broken[0] == true) { return 0; }else { return 1; } } int len = 0; while(c>0) { if(broken[c%10] == true) { return 0; } len+=1; c = c/10; } return len; }
public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int m = sc.nextInt(); for(int i=0;i<m;i++) { int button = sc.nextInt(); broken[button] = true; } int ans = n - 100; if(ans<0) { ans = -ans; } for(int i=0;i<=1000000;i++) { int c = i; int len = possible(c); if(len>0) { int press = c-n; if(press<0) { press = -press; } if(ans>press+len) { ans = len+press; } } } System.out.println(ans); } }