본문 바로가기
728x90

programmers46

[PG/Python] 전력망을 둘로 나누기 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/86971 코딩테스트 연습 - 전력망을 둘로 나누기 9 [[1,3],[2,3],[3,4],[4,5],[4,6],[4,7],[7,8],[7,9]] 3 7 [[1,2],[2,7],[3,7],[3,4],[4,5],[6,7]] 1 programmers.co.kr 📌 문제 접근 방법 인접리스트를 활용해서 연결된 전선 정보를 입력해준다. wires를 한 번 더 반복문을 돌리면서 전선들 중 하나를 끊는다. 이 때 끊긴 두 송전탑을 기준으로 전력망이 가진 송전탑의 개수를 bfs를 활용해서 구해준다. 두 전력망의 송전탑 수와 현재의 answer에 저장된 값을 비교하여 더 작은 값으로 answer 값을 갱신해준다. 끊긴 두.. 2021. 11. 14.
[PG/Python] 타겟 넘버 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr 📌 문제 접근 방법 문제 분류가 dfs, bfs길래 그걸 어떻게 써야하나 한참 고민하다가 아이디어가 안떠올라서 그냥 일단 해보자! 하고 짜봤다. (사실 시간초과 나려나 했는데 안나서 읭?했음..) 숫자의 개수보다 1개 더 많게 리스트를 만들어주고 반복문을 돌리면서 리스트 안의 모든 값에 숫자를 더하고.. 2021. 11. 4.
[PG/Python] 문자열 압축 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 📌 문제 접근 방법 처음엔 문자열 길이의 약수들로만 단위를 줬었는데, 테스트 케이스가 틀렸길래 꼭 나누어 떨어지지 않더라도 남은 문자열은 더해주면 된다고 문제에 적혀있어서 이 부분을 수정했다. 첫 번째 반복문에서 i는 1부터 len(s)-1까지를 순회한다. i가 문자열을 나누는 단위가 된다. 두 번째 반복문에서 j는 i부터 len(s)-1까지 i.. 2021. 11. 3.
[PG/Python] 모의고사 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 📌 문제 접근 방법 완전 탐색 적용해보기! answers리스트의 길이가 계속 바뀌어서 길이를 설정해주는 함수를 만들어서 길이를 늘려주었다. 다른 사람의 코드를 보니 answers의 해당 인덱스를 패턴 길이로 나누어서 바로 인덱싱을 해주었더라! 완전 깔끔✨ 어떻게 하면 그렇게 생각해서 코드를 구현할 수 있을까..!!! 📌 코드 def set_len(pat.. 2021. 8. 21.
728x90