카테고리 없음

순위검색 파이썬 (프로그래머스)

령과 2021. 12. 28. 00:29

https://programmers.co.kr/learn/courses/30/lessons/72412

 

코딩테스트 연습 - 순위 검색

["java backend junior pizza 150","python frontend senior chicken 210","python frontend senior chicken 150","cpp backend senior pizza 260","java backend junior chicken 80","python backend senior chicken 50"] ["java and backend and junior and pizza 100","pyt

programmers.co.kr

 

나의 풀이법: 단순 구현 -> 처음 테스트는 통과 했으나 모든 테스트 런타임 에러 발생

def solution(info, query):
    answer=[]
    new_info=[]
    new_query=[]
    for i in info:
        new_info.append(i.split(' '))
        new_info[-1][-1]=int(new_info[-1][-1])

    for i in query:
        tmp=i.split(' and ')
        a,b=tmp[-1].split(' ')
        tmp[-1]=a
        tmp.append(int(b))
        new_query.append(tmp)

        
    for i in new_query:
        count=0 #사람수 
        for j in new_info:
            j_count=0
            if i[-1]<=j[-1]: #점수먼저 확인한다

                for k in range(len(new_info)-2):#점수확인 후 나머지 조건 충족시 j_count를 더한다
                    if j[k]==i[k] or i[k]=='-':
                        j_count+=1
                
            if j_count==4:#점수조건 제외하고 나머지 조건 4가지 충족시 count
                count+=1 #모든 조건 만족시 카운트 한다.
        answer.append(count) #모든 조건 만족시 카운트한 값을 answer에 채운다
        
        
    return answer

 

다른 사람 풀이를 보지 않고 하루정도 스스로 풀어보자