Yeji's Tech Notes
반응형
article thumbnail
[구름톤 챌린지] 알고리즘 챌린지 구름찾기깃발
스터디/구름톤 2023. 8. 22. 11:38

[ 목차 ] 1. 구름찾기깃발 문제 2. 풀이 3. 느낀점 구름찾기 깃발 문제 구름 찾기 게임은 한 변의 길이가 N 인 격자 모양의 게임판 M 에서 진행하는 게임이다. 게임판의 일부 칸에는 구름이 숨겨져 있고, 게임판에 숨겨진 모든 구름의 위치를 찾으면 게임에서 승리할 수 있다. 구름 찾기 게임의 제작자인 플레이어는 조금 더 쉽게 구름을 찾을 수 있도록 도와주는 깃발을 게임판 위에 설치하려고 한다. 깃발은 구름이 없는 칸이면서, 상하좌우와 대각선으로 인접한 여덟 칸 중 구름이 하나 이상 있는 칸에만 설치할 수 있다. 이렇게 설치한 깃발에는 인접한 여덟 칸 중 구름이 있는 칸의 개수에 해당하는 값이 적힌다. 플레이어는 깃발을 세울 수 있는 모든 칸에 깃발을 세워두었다. 문득, 플레이어는 깃발 중 값이 K ..

article thumbnail
[구름톤 챌린지] 알고리즘 챌린지 Week2Day1 학습일기
스터디/구름톤 2023. 8. 21. 12:32

[ 목차 ] 1. 구름톤 챌린지 2주차 개요 2. 문자열 나누기 문제 3. 문자열 나누기 풀이 4. 느낀점 개요 원래는 구름톤 챌린지 때문에 블로그 글 작성했는데 매일 문제 풀고 정리하니 복습할 수 있어서 챌린지 상관없이 블로그 글 작성하기 시작했습니다. 그럼 완전탐색 Week2Day1 문제 접근 방법 및 풀이에 대해서 정리하겠습니다. ☁️ 문제 ☁️ 제한사항 풀이 문제에서 구해야 될 부분은 총 2가지 입니다. 첫째 조건에 따라 나눴을 때 나오는 모든 부분 문자열의 사전 순으로 정렬 된 값 둘째 나누어진 3개의 문자열의 index+1 위치를 더했을 때 가장 큰 점수 구하기 문제에서 나왔듯이 abcd 문자열을 3개의 부분 문자열로 나눴을때 가장 큰 점수는 {ab,c,d} 2 + 5 + 7 => 14가 제일..

article thumbnail
[구름톤 챌린지] 알고리즘 챌린지 1주차 마지막 학습일기
스터디/구름톤 2023. 8. 18. 11:25

[ 목차 ] 1. ☁️ 구름톤 챌린지 문제 (이진수 정렬) 2. 📝 이진수 정렬 풀이 3. 🧐 느낀점 ☁️ 구름톤 챌린지 문제 (이진수 정렬) N개의 10진수 정수가 주어진다. 플레이어가 정수를 그냥 정렬하는 것은 너무 쉽기 때문에, 아래 기준에 따라 정수를 정렬하기로 한다. 1.. 10진수 정수를 2진수로 나타냈을 때, 2진수에 포함된 1의 개수를 기준으로 내림차순 정렬한다. 2. 1의 개수가 같다면, 원래 10진수를 기준으로 내림차순 정렬한다. 📝 이진수 정렬 풀이 우선, 주어진 기준으로 정렬할 수 있도록 순위를 결정 짓는 공식을 작성해야합니다. 이때 저는 우선순위 큐를 사용해 값을 넣을때마다 정렬 할 수 있도록 했습니다. List를 사용해도 되지만 List에 넣고, Sort하는 메소드를 호출해야되서..

article thumbnail
백준 별 찍기 - 10 (2447번) 자바 풀이
알고리즘 2023. 5. 5. 17:01

문제 설명 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제 출력 1과 같다. 입력 예제 첫째 줄에 N이 주어진다. N은 3의 거듭제곱이다. 즉 어떤 정수 k에 대해 N=3k이며, 이때 1 ≤ k < 8이다. - 예제 입력 1 27​ - 예제 출력 1 문제 접근 방식 1. 시간 복잡도 우선 알고리즘 구현 시 시간복잡도를 확인해봤을 떄, N은 3의 ..

article thumbnail
냅색 알고리즘 (Knapsack Algorithm)개념과 원리
알고리즘 2023. 3. 21. 17:51

[ 목차 ] 1. 개요 2. 냅색 알고리즘 개념 3. 냅색 알고리즘 원리 개요 특정 가중치와 할당된 값을 가진 항목 집합이 주어지면 가중치 제약 내에 머무르면서 배낭의 값을 최대화하는 것이 목표인 시나리오에서 유래된 알고리즘 입니다. 냅색 알고리즘은 optimization 카테고리에 속하는 DP(Dynamic Programming) 문제 입니다. *optimization DP(Dynamic Programming) 해법으로는 총 두가지가 있습니다. 1. Overlapping subproblem 2. Optimal substructure 여기서 냅색 알고리즘은 2번째 Optimal substructure은 작은 문제의 최적 해법으로 원래 문제의 최적 해법을 구하는 방식 입니다. 문제 예시를 들어보면, 마리는..

article thumbnail
뻔뻔해:당당해:기가막혀: 6주 혼공학습단 회고
스터디/혼공학습단 2023. 2. 16. 17:36

혼공학습단 9기 혼공자바를 6주 동안 완독 하였습니다 오랜만에 책을 읽었지만 완독까지 한 건 진짜 오랜만이네요... 회사 다니면서 스터디를 하는 것은 정말 힘든 일인 거 같아요... 스트레스도 많이 받았지만 혼공자바를 읽고 숙제해 나가면서 흥미롭고 새로운 사실도 많이 알 수 있는 계기가 많아서 여기까지 올 수 있었던 것 같습니다 👍 또한 저는 혼공학습단을 꼭 하고 싶었던 이유가 지난 8기 모집 때도 혼공학습단에 선정되어서 자바 스터디를 한 적이 있습니다. 그때도 3주 차까지 진행하던 중 점점 진도가 밀리게 되어 남은 기간 동안 완독을 못하게 되어서 아쉽게도 혼공학습단을 끝까지 못하게 된 게 아쉬움이 많이 남았습니다. 하지만 이런 저의 실패에도 스터디를 다시 참여할 수 있게 해 주셔서 여기까지 올 수 있게..

반응형