[Programmers] Lv.1-模擬試験(Kotlin)


質問リンク


質問リンク

問題の説明



解釈言語


Kotlin

解答方法


完全に探求問題だ.3人の学生がいて、学生が選んだ答えも決まっています.質問の答えを入力し、学生が選んだ答えと比較すればいい.

  • 学生が選択した答えは2 D配列に保存されます.student

  • 学生たちはいくつかの答えを格納する配列を発表した.answerStudent

  • 最初の学生からいくつかの探索を始めた.ナビゲーション中に、学生が選択した答えが保存された配列の最後に達した場合、再びその配列の最初の値に設定されます.

  • その後,max()法により最大解答数を算出し,3名の解答数と比較した.

  • 共同1位になる可能性があるので、sort()で昇順に並びます.

  • return値で変換する必要がある資料型はIntArrayである.
  • 結果



    コード#コード#

    class Solution {
        fun solution(answers: IntArray): IntArray {
            val student = arrayOf(arrayOf(1, 2, 3, 4, 5), arrayOf(2, 1, 2, 3, 2, 4, 2, 5), arrayOf(3, 3, 1, 1, 2, 2, 4, 4, 5, 5))
            var answerStudent = arrayOf(0, 0, 0)
            var temp = arrayListOf<Int>()
            var answer = intArrayOf()
            
            for (i in 0..2) {
                var index = 0
                var cnt = 0
                for (j in answers.indices) {
                    if (answers[j] == student[i][index]) {
                        cnt += 1
                    }
                    if (index == student[i].size - 1) {
                        index = 0
                    } else {
                        index += 1
                    }
                }
                answerStudent[i] = cnt
            }
            
            val maxValue = answerStudent.max()
            
            for (i in 0..2) {
                if (maxValue == answerStudent[i]) {
                    temp.add(i+1)
                }
            }
            
            temp.sort()
    
            answer = temp.toIntArray()
            
            return answer
        }
     
    }

    知るところ


    本当に簡単な質問ですがArrayとArrayListとInArrayの違いが分からず大変でしたこの問題を提出するとすぐ面と向かって一つ一つまとめた.以前の投稿を参照してください.
    Array VS ArrayList