From 022f89a5376990fceb77e638fac102ff1f3fba8c Mon Sep 17 00:00:00 2001 From: Vasily Guzov Date: Sun, 10 Nov 2024 22:03:28 +0300 Subject: [PATCH] [HAI] home work leetcode --- lib/missingNumber/index.ts | 3 +++ lib/missingNumber/missingNumber.test.ts | 31 +++++++++++++++++++++++++ lib/missingNumber/missingNumber.ts | 13 +++++++++++ 3 files changed, 47 insertions(+) create mode 100644 lib/missingNumber/index.ts create mode 100644 lib/missingNumber/missingNumber.test.ts create mode 100644 lib/missingNumber/missingNumber.ts diff --git a/lib/missingNumber/index.ts b/lib/missingNumber/index.ts new file mode 100644 index 0000000..39d30a8 --- /dev/null +++ b/lib/missingNumber/index.ts @@ -0,0 +1,3 @@ +import { missingNumber } from "./missingNumber"; + +export default missingNumber; diff --git a/lib/missingNumber/missingNumber.test.ts b/lib/missingNumber/missingNumber.test.ts new file mode 100644 index 0000000..724c5ee --- /dev/null +++ b/lib/missingNumber/missingNumber.test.ts @@ -0,0 +1,31 @@ +import { describe, it, expect } from "vitest"; +import { missingNumber } from "./missingNumber.ts"; + +describe("missingNumber", () => { + + it("[3, 0, 1] expect 2", () => { + const nums = [3, 0, 1]; + expect(missingNumber(nums)).toBe(2); + }); + + it("[0, 1] expect 2", () => { + const nums = [0, 1]; + expect(missingNumber(nums)).toBe(2); + }); + + it("[9, 6, 4, 2, 3, 5, 7 , 0, 1] expect 8", () => { + const nums = [9, 6, 4, 2, 3, 5, 7, 0, 1]; + expect(missingNumber(nums)).toBe(8); + }); + + it("[0] expect 1", () => { + const nums = [0]; + expect(missingNumber(nums)).toBe(1); + }); + + it("[1, 2] expect 0", () => { + const nums = [1, 2]; + expect(missingNumber(nums)).toBe(0); + }); + +}); diff --git a/lib/missingNumber/missingNumber.ts b/lib/missingNumber/missingNumber.ts new file mode 100644 index 0000000..5b01cc2 --- /dev/null +++ b/lib/missingNumber/missingNumber.ts @@ -0,0 +1,13 @@ +export function missingNumber(nums: number[]) { + + let overallSum = 0; + for (let i = 0; i <= nums.length; i++) { + overallSum += i; + } + + for (const num of nums) { + overallSum -= num; + } + + return overallSum; +};