blob: 827e46dde0cdd7b78eb2af32c32ac49b946038d4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
fn main() {
let nums: Vec<i32> = vec![2, 7, 11, 15];
let target: i32 = 9;
dbg!(Solution::two_sum(nums, target));
}
struct Solution(());
impl Solution {
pub fn two_sum(nums: Vec<i32>, target: i32) -> Vec<i32> {
let mut result = Vec::new();
let mut idx = 0;
while idx < nums.len() {
let cur = nums[idx];
let offset = idx + 1;
for (i, num) in nums[offset..].into_iter().enumerate() {
if (cur + num) == target {
result.push(idx as i32);
result.push((offset + i) as i32);
}
}
idx += 1;
}
result
}
}
|