https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제이해 길이가 n미터인 벽이 있다. ⇒ 벽은 가로로 이뤄져있다. 길이가 가로로 m미터인 롤러가 있다. 칠해야할 벽인 section으로 주어진다. 이때 각 세션은 1x1미터 크기다. 안칠해도 될 곳, 이미 칠해져 있는 곳 모두 덧칠이 가능하다. 최소한의 작업 횟수를 구하자. 문제풀이 최대한 롤러가 칠할 수 있는 크기 안쪽으로 section이 많이 들어가야 한다. 그래야 최소 횟수로 작업이 가능하..
스프링부트3이상의 버전에서는 JDK17버전 이상을 사용해야해서 JDK17버전을 한번씩 사용한다. 이때 해당 프로젝트에서 DTO를 위한 클래스를 만들 때 IDE에서는 아래와 같은 문구가 뜬다 “Class can be a record” 해당 클래스를 record라는 것으로 바꿀 수 있다는 것이다. 그리고 아래의 Convert to a reccord를 누르면 아래와 같이 된다. 책에서는 보지 못한 문법이고 어떠한 기능을 하는지, 어떻게 동작하는지 잘 알지못해 이번글에서는 이 record에 대해 정리해보고자 한다. Record란? 자바14 추가된 문법이며 불변 객체를 쉽게 생성할 수 있도록 하는 특별한 종류의 클래스이다. 주로 간단한 데이터를 저장하고 옮기는 역할로 사용하는 클래스를 만들 때 사용한다. 사용법 ..
https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 문제이해 괄호를 적절히 쳐서 주어진 식의 값을 최소로 만드려고 한다. 문제풀이 최소로 만들기 위해서는 값을 더하는게 우선되면 최소값이 된다. 그럼 더하기 연산을 어떻게 먼저할까?? 다행인것은 해당문제에 연산자가 빼기와 더하기 밖에 없다는 것이다. 그래서 '-' 문자로 split을 진행하면 더하기 연산에 괄호를 친 효과를 할 수 있다. 그 다음 '+'문자가 있는 식에 대해 합을 모두 구하고 연..
https://www.acmicpc.net/problem/20300 20300번: 서강근육맨 PT 첫째 날에 $1$과 $4$를 선택하고, 둘째 날에 $2$와 $3$을 선택하고, 마지막 날에 $5$를 선택하면 $M$은 $5$가 되며, 이때가 $M$이 최소일 때이다. www.acmicpc.net 문제이해 PT를 한 번 받을 때 운동기구를 최대 두 개 까지만 선택할 수 있다. 이전에 사용하지 않았던 운동기구를 선택하기로 계획을 세웠다. PT를 한 번 받을 때의 근손실 정도가 M을 넘지 않도록 하고 싶다. 이때, M의 최솟값을 구하자. 운동기구를 두 개 사용해서 PT를 받을 때의 근손실 정도는 두 운동기구의 근손실 정도의 합이다. 문제풀이 처음에는 정렬을 하고 중간값들 두개를 더하면 근솔실 정도의 최소값이라고 ..
https://www.acmicpc.net/problem/3085 3085번: 사탕 게임 예제 3의 경우 4번 행의 Y와 C를 바꾸면 사탕 네 개를 먹을 수 있다. www.acmicpc.net 문제이해 NxN 크기에 사탕을 채워 놓는데 사탕의 색은 모두 같지 않을 수도 있다. 상근이는 사탕의 색이 다른 인접한 두 칸을 고르고 고른 칸에 들어있는 사탕을 서로 교환한다. 모두 같은 색으로 이뤄져 있는 가장 긴 연속 부분(행 또는 열)을 고른 다음 그 사탕들을 먹는다. 상근이가 먹을 수 있는 사탕의 최대 개수를 구하는 프로그램을 작성하자. 문제풀이 사탕은 한번만 교환이 가능한 것 같다. => 문제에 추가되어야할 조건 상,하,좌,우를 모두 살피고 색이 다른 사탕이 존재한다면 교환하자. 교체를 하고 입력받은 사탕..
"책을 보면서 정리한 내용입니다." 틀린 내용이 있다면 댓글 부탁드립니다. chapter3에서는 객체지향 개발 원칙 중 OCP(개방 폐쇄 원칙)에 대한 챕터이다. 이번 챕터는 chapter2에서 구현한 코드를 OCP 원칙을 준수하여 코드의 중복을 줄이는 방식으로 진행한다. 예외, 빌드도구에 대한 이야기도 나오지만 이는 따로 정리하고 OCP를 준수하여 어떻게 코드의 중복을 줄이는지에 대해 중점적으로 적을 것이다. OCP(Open Closed Principle) - 개방 폐쇄 원칙?? 코드의 확장에는 열려있어야 하고 변경에는 폐쇄적이야 한다는 원칙 의존하는 클래스의 코드에 기능이 추가되거나 변경이 일어난다하더라도 사용하는 코드의 변경은 최소화가 되어야한다는 것이다. 코드의 유연성을 추가하고 유지보수성을 개선..
- Total
- Today
- Yesterday
- java
- 덧칠하기
- 사탕 게임#백준#3085
- 프로그래머스
- 백준#서강근육맨#20300
- 11659
- 회고
- 1978
- arraylist
- 파이썬
- springboot
- 백준#잃어버린 괄호#1541
- 게시판#자바#JPA#Entity
- querydsl
- 4673번
- list
- Spring
- 1316번
- 자바
- 서블릿#Servlet
- this()
- 7568
- 백엔드#게시판
- 스프링
- 대충 만든 자판
- HTTP#HTTP특징
- 백준
- 오류
- controller
- MVC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |