Skip to content

Commit ac84901

Browse files
authored
feat: add swift implementation to lcof problem: No.57.2 (doocs#2947)
1 parent 8e135f4 commit ac84901

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

lcof/面试题57 - II. 和为s的连续正数序列/README.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,35 @@ public class Solution {
211211
}
212212
```
213213

214+
#### Swift
215+
216+
```swift
217+
class Solution {
218+
func findContinuousSequence(_ target: Int) -> [[Int]] {
219+
var l = 1, r = 2
220+
var result = [[Int]]()
221+
222+
while l < r {
223+
let sum = (l + r) * (r - l + 1) / 2
224+
if sum == target {
225+
var sequence = [Int]()
226+
for i in l...r {
227+
sequence.append(i)
228+
}
229+
result.append(sequence)
230+
l += 1
231+
} else if sum < target {
232+
r += 1
233+
} else {
234+
l += 1
235+
}
236+
}
237+
238+
return result
239+
}
240+
}
241+
```
242+
214243
<!-- tabs:end -->
215244

216245
<!-- solution:end -->
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
class Solution {
2+
func findContinuousSequence(_ target: Int) -> [[Int]] {
3+
var l = 1, r = 2
4+
var result = [[Int]]()
5+
6+
while l < r {
7+
let sum = (l + r) * (r - l + 1) / 2
8+
if sum == target {
9+
var sequence = [Int]()
10+
for i in l...r {
11+
sequence.append(i)
12+
}
13+
result.append(sequence)
14+
l += 1
15+
} else if sum < target {
16+
r += 1
17+
} else {
18+
l += 1
19+
}
20+
}
21+
22+
return result
23+
}
24+
}

0 commit comments

Comments
 (0)