Tasks Details
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
The submission is being evaluated.
medium
Find the smallest positive integer that does not occur in a given sequence.
Task Score
100%
Correctness
100%
Performance
100%
This is a demo task.
Write a function:
function solution(A);
that, given an array A of N integers, returns the smallest positive integer (greater than 0) that does not occur in A.
For example, given A = [1, 3, 6, 4, 1, 2], the function should return 5.
Given A = [1, 2, 3], the function should return 4.
Given A = [−1, −3], the function should return 1.
Write an efficient algorithm for the following assumptions:
- N is an integer within the range [1..100,000];
- each element of array A is an integer within the range [−1,000,000..1,000,000].
Copyright 2009–2026 by Codility Limited. All Rights Reserved. Unauthorized copying, publication or disclosure prohibited.
Solution
Programming language used JavaScript
Time spent on task 12 minutes
Notes
not defined yet
Code: 09:41:04 UTC,
java,
autosave
Code: 09:42:15 UTC,
js,
autosave
Code: 09:42:45 UTC,
js,
autosave
Code: 09:42:57 UTC,
js,
autosave
Code: 09:43:09 UTC,
js,
autosave
Code: 09:43:22 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 &&b typeof resultArray[A[i]] == 'undefined')
}
}
Code: 09:43:45 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 &&b typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] =
}
}
}
Code: 09:43:56 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i
}
}
}
Code: 09:44:07 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
}
Code: 09:44:55 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
}
Code: 09:45:22 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
for (let i = 1; i)
}
Code: 09:45:46 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
for (let i = 1; i < A.length; i++) {
}
}
Code: 09:46:08 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 1; i < A.length; i++) {
}
}
Code: 09:46:19 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
if A.length
let i;
for (i = 1; i < A.length; i++) {
}
}
Code: 09:46:32 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 1; i < A.length; i++) {
}
return i
}
Code: 09:46:48 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 1; i < A.length; i++) {
if A[i] ==
}
return i
}
Code: 09:47:08 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 1; i < A.length; i++) {
if (A[i] == 'undefined') {
break;
}
}
return i
}
Code: 09:47:18 UTC,
js,
verify,
result: Failed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 1; i < A.length; i++) {
if (A[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:47:39 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = ; i < A.length; i++) {
if (A[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:47:43 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < A.length; i++) {
if (A[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:47:45 UTC,
js,
verify,
result: Failed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < A.length; i++) {
if (A[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:48:09 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < A.length; i++) {
if (resultArr[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:48:11 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < A.length; i++) {
if (resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:48:18 UTC,
js,
verify,
result: Failed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:48:40 UTC,
js,
verify,
result: Failed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:48:52 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:48:58 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:49:28 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:49:58 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:50:23 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:50:39 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:50:52 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:51:01 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:51:12 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:51:24 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:51:33 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:52:06 UTC,
js,
autosave
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
Code: 09:52:11 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:52:22 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:52:48 UTC,
js,
verify,
result: Passed
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.
Code: 09:52:51 UTC,
js,
final,
score: 
100
// you can write to stdout for debugging purposes, e.g.
// console.log('this is a debug message');
function solution(A) {
// write your code in JavaScript (Node.js 8.9.4)
let resultArray = [0];
for (let i = 0; i<A.length; i++) {
if (A[i] >= 0 && typeof resultArray[A[i]] == 'undefined') {
resultArray[A[i]] = i;
}
}
let i;
for (i = 0; i < resultArray.length; i++) {
if (typeof resultArray[i] == 'undefined') {
break;
}
}
return i;
}
The submission is being evaluated.