[ 목차 ] 1. 구름찾기깃발 문제 2. 풀이 3. 느낀점 구름찾기 깃발 문제 구름 찾기 게임은 한 변의 길이가 N 인 격자 모양의 게임판 M 에서 진행하는 게임이다. 게임판의 일부 칸에는 구름이 숨겨져 있고, 게임판에 숨겨진 모든 구름의 위치를 찾으면 게임에서 승리할 수 있다. 구름 찾기 게임의 제작자인 플레이어는 조금 더 쉽게 구름을 찾을 수 있도록 도와주는 깃발을 게임판 위에 설치하려고 한다. 깃발은 구름이 없는 칸이면서, 상하좌우와 대각선으로 인접한 여덟 칸 중 구름이 하나 이상 있는 칸에만 설치할 수 있다. 이렇게 설치한 깃발에는 인접한 여덟 칸 중 구름이 있는 칸의 개수에 해당하는 값이 적힌다. 플레이어는 깃발을 세울 수 있는 모든 칸에 깃발을 세워두었다. 문득, 플레이어는 깃발 중 값이 K ..
[ 목차 ] 1. 구름톤 챌린지 2주차 개요 2. 문자열 나누기 문제 3. 문자열 나누기 풀이 4. 느낀점 개요 원래는 구름톤 챌린지 때문에 블로그 글 작성했는데 매일 문제 풀고 정리하니 복습할 수 있어서 챌린지 상관없이 블로그 글 작성하기 시작했습니다. 그럼 완전탐색 Week2Day1 문제 접근 방법 및 풀이에 대해서 정리하겠습니다. ☁️ 문제 ☁️ 제한사항 풀이 문제에서 구해야 될 부분은 총 2가지 입니다. 첫째 조건에 따라 나눴을 때 나오는 모든 부분 문자열의 사전 순으로 정렬 된 값 둘째 나누어진 3개의 문자열의 index+1 위치를 더했을 때 가장 큰 점수 구하기 문제에서 나왔듯이 abcd 문자열을 3개의 부분 문자열로 나눴을때 가장 큰 점수는 {ab,c,d} 2 + 5 + 7 => 14가 제일..
[ 목차 ] 1. ☁️ 구름톤 챌린지 문제 (이진수 정렬) 2. 📝 이진수 정렬 풀이 3. 🧐 느낀점 ☁️ 구름톤 챌린지 문제 (이진수 정렬) N개의 10진수 정수가 주어진다. 플레이어가 정수를 그냥 정렬하는 것은 너무 쉽기 때문에, 아래 기준에 따라 정수를 정렬하기로 한다. 1.. 10진수 정수를 2진수로 나타냈을 때, 2진수에 포함된 1의 개수를 기준으로 내림차순 정렬한다. 2. 1의 개수가 같다면, 원래 10진수를 기준으로 내림차순 정렬한다. 📝 이진수 정렬 풀이 우선, 주어진 기준으로 정렬할 수 있도록 순위를 결정 짓는 공식을 작성해야합니다. 이때 저는 우선순위 큐를 사용해 값을 넣을때마다 정렬 할 수 있도록 했습니다. List를 사용해도 되지만 List에 넣고, Sort하는 메소드를 호출해야되서..
[ 목차 ] 1. 구름톤 챌린지 문제 완벽한 햄버거 만들기 2. 풀이 3. 느낀점 📝 문제 완벽한 햄버거 만들기 풀이 가장 높은 재료(중간지점)를 기준으로 내림차순이면 모든 재료값을 더해주면 끝나는 문제. 내림차순이 아닐 경우에는 0을 출력하면 된다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; /** * 완벽한 햄버거 만들기 (195686) * 11'50" */ public class Solution { public static void main(String[] args) throws Exception { try (BufferedReade..
📝 문제 풀이 if문 조건식 사용 import java.io.*; class Main { public static void main(String[] args) throws Exception { try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) { System.out.print(solution(reader)); } catch (IOException e) { e.printStackTrace(); } } static int solution(BufferedReader br) throws IOException{ int n = Integer.parseInt(br.readLine()); int answer = 0; fo..
📝 문제 풀이 import java.io.*; import java.util.Arrays; class Main { private static final int MINUTES = 60; private static final int HOURS = 24; public static void main(String[] args) { try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) { System.out.print(solution(reader)); } catch (IOException e) { e.printStackTrace(); } } static String solution(BufferedReader br) thr..