Skip to content

Commit 9430a95

Browse files
authored
feat: add swift implementation to lcp problem: No.28 (#3775)
1 parent 038e542 commit 9430a95

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

lcp/LCP 28. 采购方案/README.md

+25
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,31 @@ func purchasePlans(nums []int, target int) int {
123123
}
124124
```
125125

126+
#### Swift
127+
128+
```swift
129+
class Solution {
130+
func purchasePlans(_ nums: [Int], _ target: Int) -> Int {
131+
let mod = 1_000_000_007
132+
let nums = nums.sorted()
133+
var res = 0
134+
var i = 0
135+
var j = nums.count - 1
136+
137+
while i < j {
138+
if nums[i] + nums[j] > target {
139+
j -= 1
140+
} else {
141+
res = (res + j - i) % mod
142+
i += 1
143+
}
144+
}
145+
146+
return res
147+
}
148+
}
149+
```
150+
126151
<!-- tabs:end -->
127152

128153
<!-- solution:end -->
+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
class Solution {
2+
func purchasePlans(_ nums: [Int], _ target: Int) -> Int {
3+
let mod = 1_000_000_007
4+
let nums = nums.sorted()
5+
var res = 0
6+
var i = 0
7+
var j = nums.count - 1
8+
9+
while i < j {
10+
if nums[i] + nums[j] > target {
11+
j -= 1
12+
} else {
13+
res = (res + j - i) % mod
14+
i += 1
15+
}
16+
}
17+
18+
return res
19+
}
20+
}

0 commit comments

Comments
 (0)