프로그래머스/LEVEL 1

Go 모의고사

GenieLove! 2021. 10. 24. 21:37
728x90
반응형
func solution(answers []int) []int {
    person1 := []int{1,2,3,4,5}
    person2 := []int{2,1,2,3,2,4,2,5}
    person3 := []int{3,3,1,1,2,2,4,4,5,5}
    result := make([]int, 1)
    
    lenSlice := []int{0, len(person1), len(person2), len(person3)}
    
    scoreSlice := []int{0,0,0,0}
    
    for i := 0; i < len(answers); i++ {
        if answer(person1[i % lenSlice[1]], answers[i]) {
            scoreSlice[1]++
        }
        if answer(person2[i % lenSlice[2]], answers[i]) {
            scoreSlice[2]++
        }
        if answer(person3[i % lenSlice[3]], answers[i]) {
            scoreSlice[3]++
        }
    }
    
    result[0] = 1
    for i := 2; i < len(scoreSlice); i++ {
        if scoreSlice[result[0]] < scoreSlice[i] {
            result = make([]int, 1)
            result[0] = i
        } else if scoreSlice[result[0]] == scoreSlice[i] {
            result = append(result, i)
        }
    }
    
    
    return result
}

func answer(person int, realAnswer int) bool {
    if person == realAnswer {
        return true
    }
    return false
}
728x90
반응형

'프로그래머스 > LEVEL 1' 카테고리의 다른 글

괄호 회전하기  (0) 2021.11.06
N개의 최소공배수  (0) 2021.11.06
나머지가 1이 되는 수 찾기  (0) 2021.10.16
8주차_최소직사각형  (0) 2021.10.16
문자열 다루기 기본  (0) 2021.10.10