알고리즘
알고리즘/ 빠진 숫자 찾기 _PHP
개발쟝
2018. 5. 19. 10:48
https://app.codility.com/demo/results/trainingPJJYGA-U3G/
배열에는 1~(N+1) 까지 각 인덱스에 중복되지 않는 값이 들어간다.
배열 크기는 N 이다.
function solution($A) { $result = 0; $N = sizeof($A); if ($N < 0 || $N > 100000) return $result; $max = 0; for ($i = 0 ; $i < $N ; $i++) { if(!isset($tmp[$A[$i]])) { $tmp[$A[$i]] = 1; $max = $max < $A[$i] ? $A[$i] : $max; } else return $result; } if ($max == $N+1) { $cnt = 0; for ($i = 1 ; $i < $max+1 ; $i++) { if (!isset($tmp[$i])) { $result = $i; $cnt++; } } if ($cnt > 1) $result = 0; } else $result = $max+1; return $result; }