Java 9

[프로그래머스 Lv3][자바] 거스름돈

❓문제설명거스름돈 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔍문제해석어떤걸 풀어야 할까?잔돈 금액과 화폐종류가 주어지면 화폐들을 이용해 잔돈을 거슬러 줄 수 있는 모든 방법을 구해라너무 큰 수가 나올 수 있으니 1,000,000,007을 나눈 나머지를 반환하라.🧐문제풀이문제 풀이 구상배열을 만들고 칸마다 해당 인덱스의 금액을 만들기 위해서는 몇개의 방법이 있는지 담는다.그 계산이 모두 끝난 후 배열[잔돈] 의 값을 정답으로 리턴한다.방법의 갯수를 찾기 위해서는 아래와 같이 생각해보았다.오름차순으로 화폐 한개씩 계산을 해본다. (기존 화폐들로 계산된 ..

[프로그래머스 Lv3][자바] 합승 택시 요금

❓문제설명합승 택시 요금 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr🔍문제해석어떤걸 풀어야 할까?각 지점과 그 지점을 오가는 간선에 택시 요금이 주어진다.무지와 어피치는 택시 비용을 줄이기 위해 합승을 하기로한다. 그렇게 합승을 했을때 발생하는 택시비용 중 가장 최소금액을 구해라. 만약 합승 하는 것보다 각자의 도착지점을 향하는게 더 적은 요금이 든다면, 그 값을 리턴해라.🧐문제풀이문제 풀이 구상각 지점과 간선의 비용이 주어진 것을 보아 인접리스트를 생각하였다.근데 그 인접리스트를 이용해 어떻게 최소 금액을 구해야할지는 생각하지 못하고, 참고할 만한 블..

[프로그래머스 Lv2][JAVA] 연속된 부분 수열의 합

❓ 문제설명연속된 부분 수열의 합 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr비내림차순으로 정렬된 수열이 주어질 때, 다음 조건을 만족하는 부분 수열을 찾으려고 합니다.기존 수열에서 임의의 두 인덱스의 원소와 그 사이의 원소를 모두 포함하는 부분 수열이어야 합니다.부분 수열의 합은 k입니다.합이 k인 부분 수열이 여러 개인 경우 길이가 짧은 수열을 찾습니다.길이가 짧은 수열이 여러 개인 경우 앞쪽(시작 인덱스가 작은)에 나오는 수열을 찾습니다.수열을 나타내는 정수 배열 sequence와 부분 수열의 합을 나타내는 정수 k가 매개변수로 주어질 때, 위 조건을..

스프링에서 예외처리를 하는 방법 (ExceptionHandler, RestControllerAdvice)

💡주제 예외처리를 위해 주렁 주렁 달은 try catch. catch 문 안에서 예외를 처리하다가 발생한 예외를 처리하기 위해 try catch 안에 try catch를 추가하는 상황이 발생하기도 한다.가독성이 떨어져 결국 catch의 인자를 Exception으로 받아 모든 에러를 통으로 처리해버린다..스프링 MVC 환경에서 좀 더 에러를 깔끔하고 잘 처리하기 위한 방법을 알아본다.👾 ExceptionHandler컨트롤러 기반의 예외처리@Exceptionhandler의 인자값으로 exception 클래스를 넣어주면 해당 exception 발생했을때 이 @Exceptionhandler가 붙은 메소드가 동작한다.(리스트도 가능)@ResponseStatus 어노테이션을 통해 원하는 http 상태코드를 리턴..

[프로그래머스 Lv2][JAVA] 요격 시스템

❓문제 설명요격 시스템 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr A 나라가 B 나라를 침공하였습니다. B 나라의 대부분의 전략 자원은 아이기스 군사 기지에 집중되어 있기 때문에 A 나라는 B 나라의 아이기스 군사 기지에 융단폭격을 가했습니다.A 나라의 공격에 대항하여 아이기스 군사 기지에서는 무수히 쏟아지는 폭격 미사일들을 요격하려고 합니다. 이곳에는 백발백중을 자랑하는 요격 시스템이 있지만 운용 비용이 상당하기 때문에 미사일을 최소로 사용해서 모든 폭격 미사일을 요격하려 합니다.A 나라와 B 나라가 싸우고 있는 이 세계는 2 차원 공간으로 이루어져 있..

[프로그래머스 Lv2][JAVA][PCCP 기출문제] 3번 / 아날로그 시계

❓문제설명[PCCP 기출문제] 3번 / 아날로그 시계 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 시침, 분침, 초침이 있는 아날로그시계가 있습니다. 시계의 시침은 12시간마다, 분침은 60분마다, 초침은 60초마다 시계를 한 바퀴 돕니다. 따라서 시침, 분침, 초침이 움직이는 속도는 일정하며 각각 다릅니다. 이 시계에는 초침이 시침/분침과 겹칠 때마다 알람이 울리는 기능이 있습니다. 당신은 특정 시간 동안 알람이 울린 횟수를 알고 싶습니다.다음은 0시 5분 30초부터 0시 7분 0초까지 알람이 울린 횟수를 세는 예시입니다.가장 짧은 바늘이 시침, 중간 길..

DTO vs Map 장점과 단점은?

💡 주제 클라이언트에서 서버, 컨트롤러에서 서비스 등 계층 간 데이터를 전송 하기 위해 주로 DTO 또는 Map을 사용한다.각각의 개념과 장단점, 사용방법에 대해서 정리해본다.📦 DTO DTO는 Data Transfer Object의 약어로 계층 간 데이터 전송을 위해 설계된 객체다.DTO는 주로 데이터베이스와 애플리케이션의 비즈니스 로직, 또는 애플리케이션과 클라이언트 간의 데이터 교환을 간소화하는 데 사용된다.DTO는 일반적으로 데이터 필드만 포함하고, 비즈니스 로직은 포함하지 않는다.각 필드에 대한 getter와 setter 메서드를 제공하여 데이터의 접근을 쉽게 한다. (나는 중간에 데이터가 변경되지 않도록 setter를 추가하지 않는 편이다.)👍🏻 장점계층 간 데이터 전송 단순화DTO는 ..

9. Math클래스

Math클래스 - Math클래스는 기본적인 수학계산에 유용한 메서드로 구성되어 있다. - Math클래스의 생성자는 접근 제어자가 private이기 때문에 다른 클래스에서 Math인스턴스를 생성할 수 없도록 되어있다. - Math클래스의 메서드는 모두 static이며 아래와 같이 2개의 상수만 정의해 놓았다.( E : 자연로그의 밑, PI : 원주율) 원하는 소수점 자리에서 반올림 하는 방법 * Math클래스의 round() 함수는 항상 소수점 첫째자리에서 반올림을 한다. * 반올림이 필요하지 않다면 round() 함수를 사용하지 않고 단순히 100으로 곱하고 100.0으로 나누기만 하면 된다. 예시) 90.7552를 소수점 셋째자리에서 반올림 후 소수점 두 자리까지의 값을 얻는 방법 1. 원래 값에 10..

7. 예외처리(exception handling)

프로그램 오류(에러) : 프로그램이 실행 중 오작동을 하거나 비정상적으로 종료되는 경우를 초래하는 원인. - 컴파일 에러(compile-time error) : 컴파일 할 때 발생하는 에러. - 런타임 에러(runtime error) : 프로그램 실행 도중에 발생하는 에러. - 논리적 에러(logical error) : 컴파일, 실행에는 이상없지만 의도와 다르게 동작하는 것. 에러(error)와 예외(exception) : 자바에서 실행시 발행할 수 있는 프로그램 오류의 유형. - 에러(error) : 발생하면 프로그램 코드에 의해서 수습될 수 없는 심각한 오류. 프로그램의 비정상적인 종료를 막을 수 없다. ex) OutOfMemoryError(메모리부족), StackOverflowError(스택오버플로..

728x90
반응형