본문으로 바로가기
728x90
반응형

목차

     

    공 던지기

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

     

    프로그래머스

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

    programmers.co.kr

    def solution(numbers, k):
        answer = 0
        count = 1
        current = 0
        for idx in range(k):
            current = (current + 2) % len(numbers)
            count += 1
    
            if count == k:
                answer = numbers[current]
    
        return answer
    
    
    if __name__ == '__main__':
        # print(solution([1, 2, 3, 4], 2))  # 3
        # print(solution([1, 2, 3, 4, 5, 6], 5)) # 3
        print(solution([1, 2, 3], 3))  # 2

    K번쨰로 공을 던지는 사람을 구하는 문제기 떄문에 K번만 반복하고, 주어진 배열의 index를 초과하니 배열을 오른쪽으로 rotate 시키는 방식으로 접근하여 품

     

     

     

    A로 B만들기

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

     

    프로그래머스

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

    programmers.co.kr

    def solution(before, after):
        b_map = {ch: before.count(ch) for ch in before}
        a_map = {ch: after.count(ch) for ch in after}
    
        for k, v in a_map.items():
            if k in b_map:
                a_map[k] -= b_map[k]
    
        for i in list(a_map.values()):
            if i != 0:
                return int(False)
    
        return int(True)
    
    
    if __name__ == '__main__':
        print(solution("olleh", "hello"))
        print(solution("allpe", "apple"))
        print(solution("a", "al"))

    brefore 문자로 after를 만드는 것이므로 before의 문자의 수가 after에 하나씩은 있어야하는 것으로 가정하고 풀이 접근

    728x90
    반응형