https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 풀이 가장 먼저 두 단어의 서로 다른 철자 개수를 세는 함수를 만들자 현재 단어 current에서 다른 단어로 변환하기 위해선 current와 다른 단어는 딱 1개만 서로 다른 철자를 가져야 한다. 따라서 변환할 수 있는 단어를 찾기 위해 해당 함수가 필요하다. 재귀를 돌려서 계속 words 단어 내 단어를 탐색하자 재귀 함수 종료 조건은 현재 단어 current와 target이 같을 때이다..
https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 풀이 모든 가능한 순열을 구하자 위 그림처럼 011이 입력으로 주어지면, 길이가 각 1, 2, 3인 다양한 순열이 존재한다. 순서가 중요하기 때문에 조합이 아니라 순열을 구해야 한다. 각 숫자는 문자열로 취급하므로 011이라는 것이 존재할 수 있다. 각 순열로 만들어진 숫자가 소수인지 판별하자 (with 집합) 위에서 만들어진 모든 조합을 int 타입으로 형변환하고, 이것이 소수인지 판별하자..
https://www.acmicpc.net/problem/4195 4195번: 친구 네트워크 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스의 첫째 줄에는 친구 관계의 수 F가 주어지며, 이 값은 100,000을 넘지 않는다. 다음 F개의 줄에는 친구 관계가 생긴 순서대로 주어진 www.acmicpc.net 1. 접근 방식 parents는 리스트 대신 딕셔너리를 사용하자. 일반적인 union-find 방식은 리스트의 인덱스를 통해 부모를 탐색하는 작업을 진행했지만, 이 문제에선 인덱스로 부모를 표현할 수 없다. 따라서 딕셔너리 자료형을 사용하여 a의 부모가 누구인지 표현하자. 이때 부모란, a가 속한 네트워크의 대장이라고 생각하면 된다. 어떤 네트워크에 속한 인원 수를 구하기 위해 딕셔너리..
https://www.acmicpc.net/problem/1976 1976번: 여행 가자 동혁이는 친구들과 함께 여행을 가려고 한다. 한국에는 도시가 N개 있고 임의의 두 도시 사이에 길이 있을 수도, 없을 수도 있다. 동혁이의 여행 일정이 주어졌을 때, 이 여행 경로가 가능한 것인 www.acmicpc.net 1. 접근 방식 도시 번호가 1부터 N까지이지만, 편의를 위해 0부터 N - 1까지로 변환하자. 도시 정보를 담은 2차원 리스트(maps)의 행과 열의 인덱스는 0부터 N - 1까지이다. 따라서 개발의 편의를 위해 도시 번호를 0부터 시작하게 변경하자. 다만 마지막에 여행 계획이 담긴 도시들의 번호는 문제에서 정한 대로 번호가 1부터 시작하므로, 그 번호에 1을 감소시킨 도시 번호로 연결 정보를 ..