Think Essentially

計算機テクノロジー全般が好きです

LeetCode 1. Two Sum

class Solution {
    fun twoSum(nums: IntArray, target: Int): IntArray {
        val res: IntArray = IntArray(2);
        var resIdx: Int = 0

        for ((index, elem) in nums.withIndex()) {
            for (i in nums.indices) {
                if (index != i) {
                    val ans: Int = elem + nums[i];
                    println(i)

                    if (ans == target) {
                        res[resIdx] = i
                        resIdx++
                    }
                }
            }
        }

        return res
    }
}

nums.iterator() vs nums.indices()

for (i in nums.iterator())

上記のとき, numの大きさが3のとき i は 1 ~ 3の数字を取る

for (i in nums.indices())

対して,上記の書き方で, numの大きさが3のとき i は 0 ~ 2の数字を取る

test

test

test