카테고리 없음

백준 11047 - 동전 0

문제 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) 출력 첫째 줄에 K원을 만드는데 필요한 동전 개수의 최솟값을 출력한다. 예제 입력 1 복사 10 4200 1 5 10 50 100 500 1000 5000 10000 50000 예제 출력 1 복사 6 예제 입력 2 복사 10 4790 1..

2020.02.10 게시됨

[디자인 패턴] Factory Method 패턴 포스팅 썸네일 이미지

디자인패턴

[디자인 패턴] Factory Method 패턴

- 정의 상황에 따라 어떤 객체를 생성할지를 결정하도록 하는 패턴이다 - UML 1. Item인터페이스를 정의한 후 아이템을 사용했을때 나오는 결과를 표현하기 위해 use메소드를 정의한다 2. TradeItem, EatItem, EquipItem은 Item인터페이스를 상속받아 use함수를 재정의한다 3. ItemUseFactory인터페이스를 정의한다 4. ItemUseFactoryImpl클래스를 정의하여 ItemUseFactory를 상속받고 Item형을 반환하는 메소드를 정의한다 - 코드 Item interface public interface Item { void use(); } EatItem class public class EatItem implements Item{ @Override public ..

2020.01.20 게시됨

[디자인 패턴] Template Method 패턴 포스팅 썸네일 이미지

디자인패턴

[디자인 패턴] Template Method 패턴

- 정의 상위 클래스에서 처리 흐름을 제어하고, 하위 클래스에서는 상위 클래스의 처리 흐름(각각의 기능)에 해당하는 메소드를 재정의 하는 패턴이다 - UML 1. GameConnectHelper클래스에 연결을 요청하는 requestConnection메소드와 보안담당 doSecurity, 인증담당 authentication, 권한담당 authorization, 연결담당 connection메소드를 정의한다. requestConnection은 나머지 메소드를 한꺼번에 실행하여 일련의 로그인 과정을 처리해주는 메소드이다. 나머지 메소드들은 재정의가 가능한 메소드이다 2. DefaultGameConnectHelper클래스는 GameConnectHelper클래스를 상속받아 보안담당 doSecurity, 인증담당 a..

2020.01.19 게시됨

[디자인 패턴] Adapter 패턴 포스팅 썸네일 이미지

디자인패턴

[디자인 패턴] Adapter 패턴

- 정의 어댑터란 기계 및 기구 등을 다목적으로 사용하기 위한 부가 기구를 말한다 예를들어, 220V에서 110V 전자기기를 사용하기 위해 110V로 변환하는 콘센트와 같은 것을 말한다 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 사용할 수 있게 하는 패턴이다. 기존 클래스를 수정하지 않고 다른 클래스와 함께 사용하는데 종종 사용되어진다 기존 시스템이 이미 갖춰져 있는 상황에서 새로운 요구사항이 주어진다고 해본다. 그러면 그 요구사항에 맞게 기존 시스템을 고치는 것이 아니라, 기존 시스템을 고치지 않고 새로운 클래스를 만들어 요구사항을 충족시키는 중간 매개체 역할을 하는 것이다. - UML 1. 기존 시스템에 해당하는 Math라는 클래스가 있다. Math의 메소드는 입력값의 두배를 doubl..

2020.01.15 게시됨

[디자인 패턴] Strategy 패턴 포스팅 썸네일 이미지

디자인패턴

[디자인 패턴] Strategy 패턴

- 정의 여러 전략들에 대한 하나의 인터페이스를 만들어 각 접근점에서 서로 교환이 가능하도록 하는 패턴이다. 간단하게 설명하자면, 인터페이스를 정의한 뒤 인터페이스를 따르는 여러 전략을 생성하고 필요시에 원하는 전략을 주입을 가능하게 함으로써 의도한 기능을 할 수 있게 해준다. - UML 1. 특정 기능(여기선 study)를 수행할 인터페이스 정의 2. 각 특정한 기능을 전략에 맞게 수행할 클래스 정의(CafeStudyStrategy, LibraryStudyStrategy, HomeStudyStrategy) 3. 전략들에 맞는 기능을 수행해줄 클래스 정의(Stduy 클래스) 4. Study 객체에 전략을 설정하고 doStudy를 통해 해당 전략이 수행될 수 있도록 함 - 코드 StudyStrategy i..

2020.01.14 게시됨