Super Kawaii Cute Cat Kaoani '2025/04 글 목록
728x90

2025/04 7

[삼성 SW 역량 테스트 기출, Python] 메이즈러너 풀이

2023 상반기 오후 1번 문제인 '메이즈러너'의 Python 풀이입니다.  1. 문제 링크https://www.codetree.ai/ko/frequent-problems/problems/maze-runner/description 삼성 코딩테스트 기출 문제 설명: 메이즈 러너 | 코드트리삼성전자 코딩테스트 기출 문제 메이즈 러너의 상세 설명입니다. 문제 요구사항을 정확히 파악하고 효율적인 알고리즘을 설계해보세요.www.codetree.ai 2. 한줄평난이도 자체는 진짜 괜찮았는데 가장 작은 박스를 찾을 때 좀 깔쌈하게 해보려다가 엣지 케이스에 걸려서 1트에 틀린 문제..그냥 심플하게 구현하는게 젤 좋은것 같습니당😂 3. 풀이 N, M, K = map(int, input().split())board = ..

[삼성 SW 역량 테스트 기출, Python] 마법의 숲 탐색 풀이

2024 상반기 오후 1번 문제로 나왔던 '마법의 숲 탐색' 문제의 python 풀이입니다. 1. 문제 링크https://www.codetree.ai/ko/frequent-problems/problems/magical-forest-exploration/description 삼성 코딩테스트 기출 문제 설명: 마법의 숲 탐색 | 코드트리삼성전자 코딩테스트 기출 문제 마법의 숲 탐색의 상세 설명입니다. 문제 요구사항을 정확히 파악하고 효율적인 알고리즘을 설계해보세요.www.codetree.ai 2. 한줄평시뮬레이션 문제의 경우 시간초과가 나는 경우가 거의 없었는데 시간 초과가 나서 도대체 뭐가 문제일까 고민했는데 치명적인 실수를 했더라구요..저의 경우 가장 깊은 행을 구할 때 dfs를 사용했는데 1->2->3..

[삼성 SW 역량 테스트 기출, Python] 포탑 부수기 풀이

2023 상반기 오전 1번 문제로 나왔던 '포탑 부수기' 문제의 python 풀이입니다. 1. 문제 링크https://www.codetree.ai/ko/frequent-problems/problems/destroy-the-turret/description 삼성 코딩테스트 기출 문제 설명: 포탑 부수기 | 코드트리삼성전자 코딩테스트 기출 문제 포탑 부수기의 상세 설명입니다. 문제 요구사항을 정확히 파악하고 효율적인 알고리즘을 설계해보세요.www.codetree.ai 2. 한줄평문제 자체는 어렵지 않았습니다. simulation + bfs로 최단 경로 찾는 문제입니다. 찾는거에서 영역 밖을 통해 이동할 수 있는게 좀 새롭긴 했지만 구현자체는 쉬웠습니다. 다만 역시나 그렇듯 조건이 너무 많아서 놓치기가 쉬워요..

[Python 코테준비] 달팽이 배열(토네이도 배열)

2차원 배열에서 시작 지점을 기준으로 나선형으로 값에 접근하는 코드이다. 코드를 외운다기보단 한번 구현해본 경험이 있으면 문제에서 토네이도 모양으로 element에 접근해야할 때 좀 더 망설임 없이 코드를 짤 수 있을 것 같아 정리해보았다.안에서 밖으로 나갈수도 있고, 밖에서 안으로 들어올수도 있다.  1. 안에서 밖으로def tornado_in_to_out(array): current_x = len(array)//2 current_y = len(array)//2 dx = [0, 1, 0, -1] dy = [-1, 0, 1, 0] dir_idx = 0 current_count = 0 length = 1 answer_list = [] answer_li..

[Python 코테준비] itertools 안쓰고 리스트 회전하기

다른 라이브러리 없이 리스트를 회전하는 방법이다. 외워두면 편하게 사용할 수 있다.# 시계방향 90도 회전def rotate_array_90(array): rotated_array = [] for row in zip(*array[::-1]): rotated_array.append(list(row)) return rotated_array# 시계방향 180도 회전def rotate_array_180(array): rotated_array = [] for row in array[::-1]: rotated_array.append(row[::-1]) return rotated_array# 시계방향 270도 회전def rotate_array_270(array..

[Python 코테준비] itertools 안쓰고 순열과 조합 구현하기

combination과 permutation은 재귀를 사용해 쉽게 구현할 수 있다.1) combination(조합) 구현: 중복안됨, 순서 상관없음# 조합 구현) 순서 상관 없음, 중복안됨def combination(arr, r): arr = sorted(arr) answer = [] def generate(chosen, idx): if len(chosen) == r: answer.append(chosen[:]) else: for i in range(idx, len(arr)): chosen.append(arr[i]) generate(chosen, i+1) ..

[Python] 딕셔너리 key 추가, key 있는지 확인, key값만 불러오기, 정렬

파이썬 딕셔너리는 사용법만 익히면 굉장히 편리하다. 딕셔너리에 key를 추가하고,딕셔너리에 특정 key가 있는지 확인하고, 딕셔너리의 key값들만 불러오고, 딕셔너리를 value값을 기준으로 정렬하는 방법을 알아보자 1. 딕셔너리에 key추가하는 방법my_dict = {}my_dict['apple'] = 3print(my_dict) # {'apple': 3}이런식으로 새로운 key값에 대해 값을 지정해주면 딕셔너리에 key:value쌍을 추가할 수 있다. 2. 특정 key가 딕셔너리에 있는지 확인하는 방법if 'apple' in my_dict: print('Key exists!')else: print('Key does not exist.')key in dict 과 같이 in을 통해 쉽게 확인..

연구/Python 2025.04.02
728x90
728x90