Leetcode Note: Go - Array Partition

Array Partition - LeetCode
https://leetcode.com/problems/array-partition/

  • Go 言語で取り組んだメモ

所感

  • int nums 配列で渡された数値でペアを生成
  • ペアのうち小さい値を取り出し、ペア同士の小さい値を加算し、その結果が最も大きい値を int で return する

回答

Array Partition - LeetCode
https://leetcode.com/problems/array-partition/solution/

Golang Solution - LeetCode Discuss
https://leetcode.com/problems/array-partition/discuss/757820/Golang-Solution

func arrayPairSum(nums []int) int {
	sort.Ints(nums)

	var sum int = 0
	for i := 0; i < len(nums); i += 2 {
		sum += nums[i]
	}

	return sum
}
  • 予め配列を sort して計算すれば良い
  • for loop のカウンタはペアの都合上 i += 2 でペア単位でのイテレーションにする