티스토리 뷰

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; }

댓글