Python20 11월 코테 준비 기록| 코테 바짝 준비! 핵심 문제들 모음 출처: Geminidfs, bfs 추가문제2D 격자(지도) 탐색 응용(10월 30일 목요일 풀이완료) 4963번: 섬의 개수 (실버 2)이유: 유기농 배추(1012)와 99% 똑같은 문제입니다. 유일한 차이점은 '상하좌우' 4방향이 아니라, '대각선까지 포함한 8방향'을 탐색해야 한다는 것입니다. 2D 탐색의 기본기를 다지기에 완벽한 문제입니다.(10월 30일 목요일 풀이완료) 2468번: 안전 영역 (실버 1)이유: '연결 요소 개수 세기(11724, 1012)'의 '종합 응용' 문제입니다."비가 1만큼 왔을 때의 안전 영역(그룹) 개수", "비가 2만큼 왔을 때의 개수"... 이렇게 비의 양 h를 for문으로 1부터 100까지 돌리면서, DFS/BFS를 총 100번 실행해보는 문제입니다. DFS/B.. 2025. 10. 29. [백준][python][2667번] 단지번호붙이기 - DFS, BFS https://www.acmicpc.net/problem/2667 나의 풀이- DFS어려웠던 점: ' 단지별로 집 개수를 어떻게 세면 좋을지' 가 고민됐다. 해결 아이디어: dfs에서 output으로 개수를 반환받는 것n = int(input()) #총 단지수graph = []for _ in range(n): graph.append(list(map(int, input()))) # True대신 개수를 반환 def dfs(x,y): if x =n or y =n: return 0 if graph[y][x] ==1: #만약 집이 있다면 graph[y][x] = 0 # 방문 처리 count = 1 count += dfs(x.. 2025. 10. 28. [이코테] 3강. DFS&BFS 리뷰 https://www.youtube.com/watch?v=7C9RgOcvkvo&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=3암기할 것 import sys# 1. 재귀 깊이 한도 늘리기 (런타임 에러 해결)sys.setrecursionlimit(10**6) # 2. 빠른 입력을 위해 input 함수를 sys.stdin.readline으로 변경input = sys.stdin.readline 파이썬에서 2D 리스트는 graph[세로][가로] (즉, graph[row][col]) 순서로 접근하는 게 가장 편함예를 들어 세로 3줄, 가로 5칸짜리 리스트를 만든다면, graph = [[0] * 5 for _ in range(3)] 이렇게 만들고, graph[1][3] (1번 .. 2025. 10. 8. [이코테] 2강. 그리디&구현 리뷰 https://www.youtube.com/watch?v=2zjoKjt97vQ&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=4&t=1319s 그리디 문제 ( 백준 비슷한 문제)1이 될때까지 (17256, 2839, 11047)곱하기 또는 더하기 (2930, 1789)모험가길드 (11399, 1931) 구현 문제시각 (18406, 1475)왕실의 나이트 (1100, 4673)문자열 재정렬 (10820, 2744) 2025. 10. 1. 백준 9월에 실버로 올라가기 처음 백준 문제풀이를 시작했다. 이번 하반기에는 꾸준히 코딩테스트 문제를 풀어보려고 한다. 지금 상태! 일단 오늘 8월 26일자로 브론즈 level5이고, 9월안에 실버로 올라가는걸 목표로 꾸준히 풀어보겠다!일단 9월에는 알고리즘 공부를 하겠다는 건 아니고 한달동안 기본 문제들 풀어보면서, 기본적인것들 짚어보고 리마인드 하는 목적으로!내년 초에는 기업 코테문제들 풀어서 합격할 수 있을 정도가 목표! 9월 3일 수요일9월 4일 목요일9월 5일 금요일 브론즈 level 4-- 2문제 (1차원 배열)2문제 (-)까먹음ㅠㅠ 9월 8일 월요일 9월 9일 화요일9월 10일 수요일9월 11일 목요일9월 12일 금요일브론즈 level 3 -- 브론즈 level 2-, 프로그래머스 가입2문제 (1차원 배열).. 2025. 8. 26. [이코테 7-2, 7-3] 이진탐색 재귀 함수로 구현한 이진탐색 # 이진 탐색 코드 구현(재귀 함수)def binary_search(array, target, start, end): if start > end: return None mid = (start + end) //2 # 중간점의 값과 target 값이 같은 경우 인덱스 반환 if array[mid] == target: return mid # 중간 점의 값보다 target 값이 작은 경우 중간점의 인쪽 확인 elif array[mid] > target: return binary_search(array, target, start,mid-1) # 중간점의 값보다 찾고자 하는 값이 큰 경우 중간점의 오른쪽 확인 else: return binary_sea.. 2024. 7. 4. 이전 1 2 3 4 다음