https://school.programmers.co.kr/learn/courses/30/lessons/42840

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


 

- Java

import java.util.*;
class Solution {
    public int[] solution(int[] answers) {
        int[] aa = {1,2,3,4,5};
        int[] bb = {2,1,2,3,2,4,2,5};
        int[] cc = {3,3,1,1,2,2,4,4,5,5};
        int[] ans = new int[3];
        for(int i=0;i<answers.length;i++){
            if(answers[i]==aa[i%aa.length])
                ans[0]++;
            if(answers[i]==bb[i%bb.length])
                ans[1]++;
            if(answers[i]==cc[i%cc.length])
                ans[2]++;
        }
        int m = 0;
        for(int i=0;i<3;i++)
            m=Math.max(m,ans[i]);
        ArrayList<Integer>ll = new ArrayList<>();
        for(int i=0;i<3;i++)
            if(m==ans[i])
                ll.add(i+1);
        int[] an = new int[ll.size()];
        int id=0;
        for(int i: ll){
            an[id]=i;
            id++;
        }
        return an;
    }
}

 

 

- Ruby

def solution(answers)
    a=[1,2,3,4,5]
    b=[2,1,2,3,2,4,2,5]
    c=[3,3,1,1,2,2,4,4,5,5]
    ans = [0,0,0]
    for i in 0..(answers.length-1)
        if a[i%a.length]==answers[i]
            ans[0]=ans[0]+1
        end
        if b[i%b.length]==answers[i]
            ans[1]=ans[1]+1
        end
        if c[i%c.length]==answers[i]
            ans[2]=ans[2]+1
        end
    end
    
    k=ans.max
    
    q=[]
    for i in 0..2
        if k==ans[i]
            q.append(i+1)
        end
    end
    
    return q
end

+ Recent posts