전체 글
![[JAVA 풀이] 프로그래머스 - 교점에 별 만들기 (Level2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBI2VS%2FbtryF8578lJ%2F15BDxlHMfeyVVGykZV2Cek%2Fimg.jpg)
[JAVA 풀이] 프로그래머스 - 교점에 별 만들기 (Level2)
코딩테스트 연습 - 교점에 별 만들기 [[2, -1, 4], [-2, -1, 4], [0, -1, 1], [5, -8, -12], [5, 8, 12]] ["....*....", ".........", ".........", "*.......*", ".........", ".........", ".........", ".........", "*.......*"] [[0, 1, -1], [1, 0, -1], [1, 0, 1]] ["*.*"] [[1, -1, 0], [2, -1, 0], [4, - programmers.co.kr 📝 문제 설명 Ax + By + C = 0으로 표현할 수 있는 n개의 직선이 주어질 때, 이 직선의 교점 중 정수 좌표에 별을 그리려 합니다. 예를 들어, 다음과 같은 직선 5개를 2..
![[JAVA 풀이] 백준(BOJ)9093 - 단어 뒤집기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMwXuh%2Fbtrw54qE6ct%2FPXWtPGKvabPDSrN8HtwQi1%2Fimg.png)
[JAVA 풀이] 백준(BOJ)9093 - 단어 뒤집기
9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 📂 분류 문자열, 구현 💡 풀이 주어진 문자열을 ' '로 split하고 StringBuilder에 넣어서 reverse() 메서드를 사용해서 풀었다. 💻 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Main { public static BufferedReader br = ..
![[JAVA 풀이] 프로그래머스 - 구명보트 (Level2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGXPkl%2FbtrwXzwyy57%2FjBLxZKICjk0sS6pKOcPi00%2Fimg.jpg)
[JAVA 풀이] 프로그래머스 - 구명보트 (Level2)
코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 📝 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다. ..
![[JAVA 풀이] 프로그래머스 - 주식 가격 (Level 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcZMPh%2FbtrwTcBOHtF%2FKm6qE980Pyp1LM5xQcjC00%2Fimg.jpg)
[JAVA 풀이] 프로그래머스 - 주식 가격 (Level 2)
코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 📝 문제 설명 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. ⚠️ 제한사항 prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다. 🖨 입출력 예 prices return [1, 2, 3, 2, 3] [4, 3, 1, 1, 0] ..
![[JAVA 풀이] 프로그래머스 - 영어 끝말잇기 (Level 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBrbjy%2FbtrwA5RlnWE%2F84SvGa9j8YhdthRSIGnRYk%2Fimg.jpg)
[JAVA 풀이] 프로그래머스 - 영어 끝말잇기 (Level 2)
코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co.kr 📝 문제 설명 1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있습니다. 영어 끝말잇기는 다음과 같은 규칙으로 진행됩니다. 1번부터 번호 순서대로 한 사람씩 차례대로 단..
![[java] 프로그래머스 - 삼각 달팽이 (Level 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJfDV3%2FbtruwIWn6Aj%2FgQKkFODfDpvVnxGY1cMKv1%2Fimg.jpg)
[java] 프로그래머스 - 삼각 달팽이 (Level 2)
코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr 📝 문제 설명 정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요. ⚠️ 제한사항 n은 1 이상 1,000 이하입니다. 🖨 입출력 예 n result 4 [1,2,9,3,10,8,4,5,6,7] 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,..
![[Clean Code] 11장 시스템](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzpHru%2FbtrtO7qc4Ni%2FO2ZkGuygLFWzO8qbwWAkzk%2Fimg.jpg)
[Clean Code] 11장 시스템
Clean Code 11장 시스템 "복잡성은 죽음이다. 개발자에게서 생기를 앗아가며, 제품을 계획하고 제작하고 테스트하기 어렵게 만든다." - 레이 오지(Ray Ozzie), 마이크로소프트 CTO 도시를 세운다면? 도시는 수도 관리 팀, 전력 관리 팀, 교통 관리 팀, 치안 관리 팀, 건축물 관리 팀 등 각 분야를 관리하는 팀이 있고, 적절한 추상화와 모듈화 때문에 잘 돌아 간다. 소프트웨어 팀도 도시처럼 구성한다. 깨끗한 코드를 구현하면 낮은 추상화 수준에서 관심사를 분리하기 쉬워진다. 이 장에서는 높은 추상화 수준, 즉 시스템 수준에서도 깨끗함을 유지하는 방법을 살펴본다. 시스템 제작과 시스템 사용을 분리하라 제작construction은 사용use 아주 다르다. 소프트웨어 시스템은(애플리케이션 객체를..
![[java] 프로그래머스 - 2개 이하로 다른 비트 (Level 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7ioqx%2FbtrtHTTIzoH%2FZTUWdOXYcoM7SAcyspSFN0%2Fimg.jpg)
[java] 프로그래머스 - 2개 이하로 다른 비트 (Level 2)
코딩테스트 연습 - 2개 이하로 다른 비트 programmers.co.kr 📝 문제 설명 양의 정수 x에 대한 함수 f(x)를 다음과 같이 정의합니다. x보다 크고 x와 비트가 1~2개 다른 수들 중에서 제일 작은 수 예를 들어, f(2) = 3 입니다. 다음 표와 같이 2보다 큰 수들 중에서 비트가 다른 지점이 2개 이하이면서 제일 작은 수가 3이기 때문입니다. 수 비트 다른 비트의 개수 2 000...0010 3 000...0011 1 f(7) = 11 입니다. 다음 표와 같이 7보다 큰 수들 중에서 비트가 다른 지점이 2개 이하이면서 제일 작은 수가 11이기 때문입니다. 수 비트 다른 비트의 개수 7 000...0111 8 000...1000 4 9 000...1001 3 10 000...1010 ..
![[Java] 코테 준비 - binary to decimal과 decimal to binary](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUOHC7%2Fbtry6Dq6uJV%2FpWdk5e2IEwrjzuP7mLf8JK%2Fimg.png)
[Java] 코테 준비 - binary to decimal과 decimal to binary
알고리즘 문제를 풀다 보면 십진수에서 이진수로 변환 또는 이진수에서 십진수 변환하는 문제가 나온다. 이를 구현하는 것은 어려운 것은 아니나 시간이 들기 때문에 언어에서 지원하는 라이브러리나 메서드를 활용하는 것이 좋다. decimal to binary 자바에서 이진수로 변환하려면 Lang.toBinaryString(Lang n)을 사용한다. String binary = Integer.toBinaryString(10); binary = Long.toBinaryString(10); System.out.println(binary); // "1010" binary to decimal 자바에서 이진수를 십진수로 변환하려면 Lang.valueOf(String s, 2)를 사용한다. String binary = "1..