programmers
-
메뉴 리뉴얼Programming/Programmers 문제풀이 2021. 3. 8. 13:39
조합과 collections을 이용하면 풀리는 문제, 처음에는 복잡하게 생각하다가...문제가 이렇게 복잡할수는 없다라고 생각하고 다시 풀어본 문제 python 풀이를 한 사람들은 대부분 combinations과 collections를 사용해서 풀었던것 같다. def solution_kakao_2(orders, course): answer = [] for k in course: candidates = collections.defaultdict(int) for menu_li in orders: for li in list(combinations(menu_li, k)): res = ''.join(sorted(li)) candidates[res] += 1 sorted_candidates = collections...
-
신규 아이디 추천Programming/Programmers 문제풀이 2021. 3. 8. 09:31
2021 카카오 코딩테스트 1번 문제 주어진 규칙대로 풀면 되는 문제 정규식 표현을 사용해서 풀어도 되는데, 정규식은 어려우므로 그냥 풀었음 def solution_kakao_1(new_id): answer = '' #허용되는 case - 문자, 숫자, '.', '_', '-' # 1번 규칙 id = new_id.lower() # 2번 규칙 id = "".join([ch for ch in id if ch.isalnum() or ch == '.' or ch == '-' or ch == '_']) # 3번 규칙 for i, value in enumerate(id): if i > 0 and id[i-1] == '.' and id[i] == '.': continue answer += value # 4번 규칙 i..