상대방이 숫자를 제시하면 다음 숫자를 맞추는 게임입니다. 게임 진행은 이렇습니다.

  1. 2019 라는 숫자가 주어집니다.
  2. 각 2,0,1,9 를 재배치 하여 새로운 숫자를 만듭니다.
  3. 만들수 있는 숫자 중 2019에서 가장 가까운 큰 수인지 확인합니다.
  4. 만약 제시한 숫자를 재배치 하여 더 큰 수를 만들수 없을 경우에는 불가능을 외칩니다.

이때 제시한 숫자에서 조건에 해당되는 숫자를 출력하세요

. 중복된 숫자가 가능합니다. ex) 1113 . 불가능일 경우 -1 을 반환합니다. . 아래 테스트케이스를 사용해보세요 . 아래는 i5-8265u ram 8gb 노트북을 사용하여 나온 실행시간입니다. 최적화를 통해 실행시간을 줄이는 법을 고민하며 풀어보세요!

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/74d61afc-e738-4f35-855e-4dd2f64d0be0/Untitled.png

testcase = [[534805, 534850],
 [200181466335, 200181466353],
 [342418, 342481],
 [184593838, 184593883],
 [5764588061401, 5764588061410],
 [3310265404276, 3310265404627],
 [55462998840, 55464028899],
 [9583002, 9583020],
 [9903, 9930],
 [82284267382, 82284267823],
 [5861870562, 5861870625],
 [2431058625597, 2431058625759],
 [2096, 2609],
 [51900633265, 51900633526],
 [438103331, 438110333],
 [7559, 7595],
 [194268, 194286],
 [246342903619, 246342903691],
 [75318567, 75318576],
 [1484199904, 1484199940],
 [851438, 851483],
 [16516473527, 16516473572],
 [9866933, 9869336],
 [93264433, 93323446],
 [5993974, 5994379],
 [545536139, 545536193],
 [53210678185243, 53210678185324],
 [42083607445681, 42083607445816],
 [951882893049, 951882893094],
 [83765752, 83767255],
 [980337731, 980371337],
 [74732413187714, 74732413187741],
 [41126, 41162],
 [9671250129086, 9671250129608],
 [11905, 11950],
 [5694, 5946],
 [7617, 7671],
 [47191129, 47191192],
 [76302408350, 76302408503],
 [97269851851, 97269855118],
 [6024528560, 6024528605],
 [6950037152, 6950037215],
 [86486614, 86486641],
 [53436907, 53436970],
 [1852, 2158],
 [32051557911866, 32051557916168],
 [84514961, 84516149],
 [7502544618249, 7502544618294],
 [8667185249651, 8667185251469],
 [436531021, 436531102],
 [68555738538170, 68555738538701],
 [2840296796454, 2840296796544],
 [854378, 854387],
 [1598300, 1800359],
 [85104740990490, 85104740990904],
 [43115353194, 43115353419],
 [710092772167, 710092772176],
 [51467, 51476],
 [14498, 14849],
 [3402, 3420],
 [579224035, 579224053],
 [143132, 143213],
 [3989, 3998],
 [64178, 64187],
 [1590674, 1590746],
 [8743333331,-1],
 [80755666708539, 80755666708593],
 [485847, 485874],
 [6737, 6773],
 [990836965, 990839566],
 [76479, 76497],
 [115406, 115460],
 [28477, 28747],
 [56032, 56203],
 [557211814, 557211841],
 [31498813640, 31498814036],
 [2850611026425, 2850611026452],
 [997236598225, 997236598252],
 [685098360927, 685098360972],
 [205657, 205675],
 [93760, 96037],
 [601914, 601941],
 [723449, 723494],
 [304532878, 304532887],
 [7857, 7875],
 [1412530, 1413025],
 [48218, 48281],
 [2329656, 2329665],
 [4373952960429, 4373952960492],
 [773869893, 773869938],
 [2871288, 2871828],
 [6416110787, 6416110877],
 [3278468, 3278486],
 [8766020, 8766200],
 [649526955287, 649526955728],
 [16218641454, 16218641544],
 [81263, 81326],
 [475197163706, 475197163760],
 [69761, 71669],
 [17236, 17263],
 [5327050295, 5327050529],
 [9612, 9621],
 [21366094061, 21366094106],
 [16038767799, 16038767979],
 [3141018486, 3141018648],
 [9379, 9397],
 [999321111,-1]]
#각 배열은 [입력숫자,정답] 으로 이루어져 있습니다.