From b4c28f88624566b22e937a8f1412801d5679e464 Mon Sep 17 00:00:00 2001 From: yanglbme Date: Sat, 30 Nov 2024 13:04:48 +0800 Subject: [PATCH 1/3] feat: add cangjie solution to lc problem: No.0001 --- solution/0000-0099/0001.Two Sum/README.md | 49 +++++++++++++------- solution/0000-0099/0001.Two Sum/README_EN.md | 49 +++++++++++++------- solution/0000-0099/0001.Two Sum/Solution.cj | 12 +++++ 3 files changed, 78 insertions(+), 32 deletions(-) create mode 100644 solution/0000-0099/0001.Two Sum/Solution.cj diff --git a/solution/0000-0099/0001.Two Sum/README.md b/solution/0000-0099/0001.Two Sum/README.md index 48c03a89e9c22..f91916af5f2c2 100644 --- a/solution/0000-0099/0001.Two Sum/README.md +++ b/solution/0000-0099/0001.Two Sum/README.md @@ -302,22 +302,6 @@ def two_sum(nums, target) end ``` -#### Nim - -```nim -import std/enumerate -import std/tables - -proc twoSum(nums: seq[int], target: int): seq[int] = - var d = initTable[int, int]() - for i, x in nums.pairs(): - let y = target - x - if d.hasKey(y): - return @[d[y], i] - d[x] = i - return @[] -``` - #### Kotlin ```kotlin @@ -337,6 +321,39 @@ class Solution { } ``` +#### Cangjie + +```cj +class Solution { + func twoSum(nums: Array, target: Int64): Array { + let d = HashMap() + for (i in 0..nums.size) { + if (d.contains(target - nums[i])) { + return [d[target - nums[i]], i] + } + d[nums[i]] = i + } + [] + } +} +``` + +#### Nim + +```nim +import std/enumerate +import std/tables + +proc twoSum(nums: seq[int], target: int): seq[int] = + var d = initTable[int, int]() + for i, x in nums.pairs(): + let y = target - x + if d.hasKey(y): + return @[d[y], i] + d[x] = i + return @[] +``` + diff --git a/solution/0000-0099/0001.Two Sum/README_EN.md b/solution/0000-0099/0001.Two Sum/README_EN.md index 38066a682c1f8..0130737ea5cf2 100644 --- a/solution/0000-0099/0001.Two Sum/README_EN.md +++ b/solution/0000-0099/0001.Two Sum/README_EN.md @@ -299,22 +299,6 @@ def two_sum(nums, target) end ``` -#### Nim - -```nim -import std/enumerate -import std/tables - -proc twoSum(nums: seq[int], target: int): seq[int] = - var d = initTable[int, int]() - for i, x in nums.pairs(): - let y = target - x - if d.hasKey(y): - return @[d[y], i] - d[x] = i - return @[] -``` - #### Kotlin ```kotlin @@ -334,6 +318,39 @@ class Solution { } ``` +#### Cangjie + +```cj +class Solution { + func twoSum(nums: Array, target: Int64): Array { + let d = HashMap() + for (i in 0..nums.size) { + if (d.contains(target - nums[i])) { + return [d[target - nums[i]], i] + } + d[nums[i]] = i + } + [] + } +} +``` + +#### Nim + +```nim +import std/enumerate +import std/tables + +proc twoSum(nums: seq[int], target: int): seq[int] = + var d = initTable[int, int]() + for i, x in nums.pairs(): + let y = target - x + if d.hasKey(y): + return @[d[y], i] + d[x] = i + return @[] +``` + diff --git a/solution/0000-0099/0001.Two Sum/Solution.cj b/solution/0000-0099/0001.Two Sum/Solution.cj new file mode 100644 index 0000000000000..2ca66e33ab56d --- /dev/null +++ b/solution/0000-0099/0001.Two Sum/Solution.cj @@ -0,0 +1,12 @@ +class Solution { + func twoSum(nums: Array, target: Int64): Array { + let d = HashMap() + for (i in 0..nums.size) { + if (d.contains(target - nums[i])) { + return [d[target - nums[i]], i] + } + d[nums[i]] = i + } + [] + } +} From 7aa2f339fe3ae50c3567d40a1b33539ab6818c2f Mon Sep 17 00:00:00 2001 From: Libin YANG Date: Sat, 30 Nov 2024 13:51:40 +0800 Subject: [PATCH 2/3] Update README.md --- solution/0000-0099/0001.Two Sum/README.md | 32 +++++++++++------------ 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/solution/0000-0099/0001.Two Sum/README.md b/solution/0000-0099/0001.Two Sum/README.md index f91916af5f2c2..74e45489db964 100644 --- a/solution/0000-0099/0001.Two Sum/README.md +++ b/solution/0000-0099/0001.Two Sum/README.md @@ -321,6 +321,22 @@ class Solution { } ``` +#### Nim + +```nim +import std/enumerate +import std/tables + +proc twoSum(nums: seq[int], target: int): seq[int] = + var d = initTable[int, int]() + for i, x in nums.pairs(): + let y = target - x + if d.hasKey(y): + return @[d[y], i] + d[x] = i + return @[] +``` + #### Cangjie ```cj @@ -338,22 +354,6 @@ class Solution { } ``` -#### Nim - -```nim -import std/enumerate -import std/tables - -proc twoSum(nums: seq[int], target: int): seq[int] = - var d = initTable[int, int]() - for i, x in nums.pairs(): - let y = target - x - if d.hasKey(y): - return @[d[y], i] - d[x] = i - return @[] -``` - From b4b02911542a0d35204cf6d0fdff99e32cf4c5a8 Mon Sep 17 00:00:00 2001 From: Libin YANG Date: Sat, 30 Nov 2024 13:51:58 +0800 Subject: [PATCH 3/3] Update README_EN.md --- solution/0000-0099/0001.Two Sum/README_EN.md | 32 ++++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/solution/0000-0099/0001.Two Sum/README_EN.md b/solution/0000-0099/0001.Two Sum/README_EN.md index 0130737ea5cf2..2e2b638512a97 100644 --- a/solution/0000-0099/0001.Two Sum/README_EN.md +++ b/solution/0000-0099/0001.Two Sum/README_EN.md @@ -318,6 +318,22 @@ class Solution { } ``` +#### Nim + +```nim +import std/enumerate +import std/tables + +proc twoSum(nums: seq[int], target: int): seq[int] = + var d = initTable[int, int]() + for i, x in nums.pairs(): + let y = target - x + if d.hasKey(y): + return @[d[y], i] + d[x] = i + return @[] +``` + #### Cangjie ```cj @@ -335,22 +351,6 @@ class Solution { } ``` -#### Nim - -```nim -import std/enumerate -import std/tables - -proc twoSum(nums: seq[int], target: int): seq[int] = - var d = initTable[int, int]() - for i, x in nums.pairs(): - let y = target - x - if d.hasKey(y): - return @[d[y], i] - d[x] = i - return @[] -``` -