[프로그래머스] 모의고사 - LV1
프로그래머스/완전 탐색2025. 3. 17. 22:23[프로그래머스] 모의고사 - LV1

📝 문제https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr[설명]가장 먼저 해야할 일은 수포자들의 문제를 찍는 패턴을 분석 [접근 방법]1. 수포자들의 패턴을 미리 배열에 저장. 특정 패턴이 있으면 배열에 미리 담아두자!2. 수포자들의 패턴과 답안을 비교해서 일치하는 개수릊 저장하는 배열을 선언3. 정답과 수포자들의 패턴을 비교해서 각 수포자들의 점수를 구한다. 정답 패턴의 길이가 수포자의 답안 길이보다 긴 경우, 정답 패턴의 처음 데이터와 다시 비교할 수 있도록 연산자 사용.if (answe..

[프로그래머스] 두 개 뽑아서 더하기 - LV1
프로그래머스/배열2025. 3. 17. 21:19[프로그래머스] 두 개 뽑아서 더하기 - LV1

📝 문제https://school.programmers.co.kr/learn/courses/30/lessons/68644 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr[설명]정수 배열 numbers에서 서로 다른 인덱스에 있는 2개의 수를 뽑아 더해 만들 수 있느 모든 수를 배열에 오름차순으로 담아 반환 [접근 방법]numbers의 최대 데이터 개수가 100이므로 시간 복잡도 고려하지 않아도 됨.1. 배열에서 두 수를 선택하는 모든 경우의 수 구하기2. 1에서 구한 수를 새로운 배열에 저장하고 중복값을 제거3. 배열을 오름차순으로 정렬하고 반환🔑 풀이import java.util.*;class So..

CS/알고리즘2025. 2. 21. 12:359. [Java] DFS (깊이 우선 탐색)

⭐️ DFS (Depth First Search)정해진 규칙에 의해 시작 정점에서 멀어지는 방향 우선으로 탐색하는 방법일반적으로 재귀함수를 사용해서 구현한다. (Stack으로도 구현 가능하지만, 구현이 상당히 복잡해진다.)그래프가 트리 형태일 때, DFS 알고리즘이 자주 쓰인다.최단거리를 구하기에는 적합한 알고리즘이 아니다. (시간 초과 주의)재귀로 구현된다는 점에서 Backtracking 과 유사하다.📝 DFS (Depth First Search) 탐색 구현 방법방문 체크 용 (재방문 방지) 배열을 만든다.현재 정점을 파라미터로 넘겨 받는 함수(메소드)를 정의한다.함수(메소드) 내부에서..현재 정점이 이미 방문한 정점이면 return 한다.현재 정점의 방문 체크를 한다.해당 정점에서 방문 가능한 다음..

[프로그래머스] 게임 맵 최단거리 - LV2
프로그래머스/BFS & DFS2025. 2. 19. 23:15[프로그래머스] 게임 맵 최단거리 - LV2

📝 문제https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr[설명]n x m 크기의 게임 맵 시작 지점에서, 캐릭터가 상대 팀 진영에 도착하기 위해서 지나가야 하는 최소 칸의 개수 구하기단, 상대 팀 진영에 도착할 수 없을 때는 -1 리턴 [접근 방법]BFS(너비 우선 탐색) 활용 [주의 사항]BFS 활용법 외우면 풀기 수월하다.방문처리는 큐에 넣을 때 꼭 같이 해줘야한다.참고 : https://school.programmers.co.kr/questions/38232 🔑 풀이import java..

image