Banner

My Tech Blog (Java)

📑 1. 최댓값 만들기 💡 풀이과정배열을 오름차순으로 정렬한 뒤에 가장 끝 값 2개를 곱한 값, 시작값 2개를 곱한 값 중 더 큰 값을 반환이렇게 하는 이유는 요소가 양수일 수도 있고 음수일 수도 있기 때문이다.  👨‍💻 정답코드import java.util.*;class Solution { public int solution(int[] numbers) { Arrays.sort(numbers); int n = numbers.length; // 가장 큰 두 수의 곱 vs 가장 작은 두 수의 곱 중 최댓값 반환 // 음수일 가능성 때문임 return Math.max(numbers[n - 1] * numbers[n - 2..
📑 1. 문제설명 💡 2. 풀이과정 j = 1부터 j = i까지 j를 증가시키면서 i % j == 0이면 cnt++ 증가즉, i를 1부터 i까지 나누면서 나누어떨어지는 개수를 세는 방식cnt >= 3이면 answer++; answer 반환 👨‍💻 3. 정답코드class Solution { public int solution(int n) { int answer = 0; for(int i = 4; i = 3) { answer++; } } return answer; }}
📑 1. 문제설명계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = 4, n = 3 인 경우입니다.  가장 왼쪽 위, 즉 집이 있는 곳의 좌표는 (1, 1)로 나타내고 가장 오른쪽 아래, 즉 학교가 있는 곳의 좌표는 (m, n)으로 나타냅니다. 격자의 크기 m, n과 물이 잠긴 지역의 좌표를 담은 2차원 배열 puddles이 매개변수로 주어집니다. 오른쪽과 아래쪽으로만 움직여 집에서 학교까지 갈 수 있는 최단경로의 개수를 1,000,000,007로 나눈 나머지를 return 하도록 solution 함수를 작성해주세요. 제한사항격자의 크기 m, n은 1 이상 ..
📑 1. 가위바위 보 ⭐ 정답코드import java.util.*;class Solution { public String solution(String rsp) { char[] arr = rsp.toCharArray(); StringBuilder sb = new StringBuilder(); for (char c : arr) { if (c=='2') { sb.append('0'); } else if (c=='0') { sb.append('5'); } else if (c=='5') { sb.append('2'); ..
📑 1. 문제설명💡 2. 접근방식동전 거스름돈 문제와 유사하다.개미 군단 문제는 주어진 값에 대해 각 개미 종류별로 몫을 카운트하고 나머지로 다른 개미 종류를 채운다.나누어 떨어지는 몫을 먼저 구하고 나머지를 처리하는 방식이다. 해결 방법 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있다.1. 먼저 hp를 장군개미(5 공격력)로 최대한 나누어 몫 구하기2. 남은 체력을 병정개미(3 공격력)로 최대한 나누어 몫 구하기3. 나머지 체력을 일개미(1 공격력)로 처리하기모든 개미의 몫을 더하면 최소 개미의 수가 된다. ⭐ 3. 정답코드class Solution { public int solution(int hp) { int answer = 0; ..
📑 1. 문제설명💡 2. 접근방식매우 쉬운 문제이다. 예시에서 n이 20 일때 곱이 20인 순서쌍은 (1, 20), (2, 10), (4, 5), (5, 4), (10, 2), (20, 1) 이므로 6을 return한다. 즉, n의 약수의 개수를 구하는 문제이다. 1부터 n까지 for문을 돌려 n%i가 0으로 떨어지면 카운트해서 answer에 누적한다. ⭐ 3. 정답코드class Solution { public int solution(int n) { int answer = 0; for (int i = 1; i
📑 1. 문제설명 💡 2. 오답정리 (틀린코드)class Solution { public String solution(String my_string, String letter) { StringBuilder sb = new StringBuilder(); for(char c : my_string.toCharArray()) { if(!c.equals(letter) sb.append(c); } return sb.toString(); }} string 타입끼리 비교할 때는 .equals 를 쓴다. 그래서 .equals의 부정인 !c.equals(letter)을 썼는데 이 부분이 틀렸다. 틀린 이유는 String 이랑 char 타입..
· Java
1. 자바의 주석초보 개발자들은 // 한 줄 주석을 남발하며 한 줄 한 줄씩 주석을 다는 습관을 가진다. 나 역시 처음 프로그래밍을 배울 때 그러했다. 조금 코딩을 해 본 사람들은 /* ... */을 사용해 여러 줄을 한꺼번에 주석 처리한다. 그리고 진짜 고수들은 /** ... */ Javadoc 주석을 활용한다. 이 주석은 함수, 클래스, 메서드 등의 설명을 포함하여 자동으로 문서를 생성할 수 있도록 도와준다. 오늘은 이 세 가지 주석의 차이점과 함께, 자바에서 주석을 빠르게 다루는 단축키를 알아보겠다. 2. 단축키자바에서 주석을 빠르게 추가하거나 제거하는 단축키는 다음과 같다. 2-1. 한 줄 주석 (//) 단축키Ctrl + / (Cmd + / on macOS)여러 줄을 선택한 후 Ctrl + /를 ..
인절미였던것
'Java' 태그의 글 목록 (7 Page)
상단으로