Files
LeetCode-Go/leetcode/0018.4Sum/18. 4Sum_test.go
2020-08-27 00:58:22 +08:00

64 lines
1.1 KiB
Go

package leetcode
import (
"fmt"
"testing"
)
type question18 struct {
para18
ans18
}
// para 是参数
// one 代表第一个参数
type para18 struct {
a []int
t int
}
// ans 是答案
// one 代表第一个答案
type ans18 struct {
one [][]int
}
func Test_Problem18(t *testing.T) {
qs := []question18{
{
para18{[]int{1, 1, 1, 1}, 4},
ans18{[][]int{{1, 1, 1, 1}}},
},
{
para18{[]int{0, 1, 5, 0, 1, 5, 5, -4}, 11},
ans18{[][]int{{-4, 5, 5, 5}, {0, 1, 5, 5}}},
},
{
para18{[]int{1, 0, -1, 0, -2, 2}, 0},
ans18{[][]int{{-1, 0, 0, 1}, {-2, -1, 1, 2}, {-2, 0, 0, 2}}},
},
{
para18{[]int{1, 0, -1, 0, -2, 2, 0, 0, 0, 0}, 0},
ans18{[][]int{{-1, 0, 0, 1}, {-2, -1, 1, 2}, {-2, 0, 0, 2}, {0, 0, 0, 0}}},
},
{
para18{[]int{1, 0, -1, 0, -2, 2, 0, 0, 0, 0}, 1},
ans18{[][]int{{-1, 0, 0, 2}, {-2, 0, 1, 2}, {0, 0, 0, 1}}},
},
}
fmt.Printf("------------------------Leetcode Problem 18------------------------\n")
for _, q := range qs {
_, p := q.ans18, q.para18
fmt.Printf("【input】:%v 【output】:%v\n", p, fourSum(p.a, p.t))
}
fmt.Printf("\n\n\n")
}