본문으로 이동
코드패스 by Devin.KR

문제 4719 · 바이트 I

두 조명 묶음의 저녁 설정

댓글 0
인증 제출 통계 · 5분마다 갱신 · 정답 비율 = 정답 제출 / 전체 제출
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1000ms측정하지 않음0000.00%

문제

스마트 홈의 거실에는 서로 다른 두 종류의 조명 묶음이 설치되어 있다. 첫 번째 종류는 벽면 조명이고 두 번째 종류는 선반 조명이다. 제어기는 각 종류에서 켤 조명 묶음의 개수를 정수로 지정한다. 같은 종류의 묶음들은 밝기에 미치는 영향이 모두 같으므로, 어떤 묶음을 켜는지는 구분하지 않고 켜는 개수만 결정한다. 벽면 조명은 최대 A개 묶음까지 켤 수 있고, 선반 조명은 최대 B개 묶음까지 켤 수 있다. 벽면 조명을 x개, 선반 조명을 y개 켠다면 x는 0 이상 A 이하의 정수이고 y는 0 이상 B 이하의 정수여야 한다. 조명을 하나도 켜지 않는 설정도 허용한다. 각 종류에서 선택한 묶음은 모두 같은 시각에 켜지며, 밝기의 시간 변화는 고려하지 않는다. 벽면 조명 한 묶음은 밝기를 P만큼 높이고, 선반 조명 한 묶음은 밝기를 Q만큼 높인다. 다른 광원은 없으므로 설정의 전체 밝기 S는 P 곱하기 x와 Q 곱하기 y의 합이다. 두 조명의 효과는 서로 방해하지 않으며, 계산한 정수 밝기를 그대로 사용한다. 사용자는 저녁 설정의 밝기가 L 이상 R 이하이기를 원한다. 이 범위에 들어오는 설정을 가능한 설정이라고 한다. 가능한 설정이 여러 개이면 다음 기준을 순서대로 적용하여 하나를 선택한다. 먼저 전체 밝기 S가 가장 작은 설정을 선택한다. 밝기가 같으면 켜는 조명 묶음의 총개수 x+y가 가장 작은 설정을 선택한다. 그 값도 같으면 벽면 조명의 개수 x가 가장 작은 설정을 선택한다. 이 기준은 앞선 기준으로 구별되지 않는 설정에만 다음 기준을 적용한다는 뜻이다. 세 기준이 모두 같으면 y도 같으므로 최종 설정은 하나로 정해진다. 사용할 수 있는 묶음 수가 0인 종류도 있을 수 있으며, 원하는 밝기 범위 안에 들어오는 설정이 전혀 없을 수도 있다. 주어진 한도를 지키면서 선택되는 x, y와 그때의 밝기 S를 구한다.

입력

첫째 줄에 정수 A와 B가 주어진다. 0 ≤ A, B ≤ 300이다.
둘째 줄에 정수 P와 Q가 주어진다. 1 ≤ P, Q ≤ 1,000이다.
셋째 줄에 정수 L과 R이 주어진다. 0 ≤ L ≤ R ≤ 600,000이다.

출력

가능한 설정이 있으면 선택한 벽면 조명의 개수 x, 선반 조명의 개수 y, 전체 밝기 S를 공백으로 구분하여 한 줄에 출력한다. 가능한 설정이 없으면 -1만 출력한다.

예제 입력 1

3 4
4 7
15 19

예제 출력 1

2 1 15

예제 입력 2

0 0
5 9
1 4

예제 출력 2

-1

예제 입력 3

2 2
5 5
10 10

예제 출력 3

0 2 10
힌트 펼치기
  • 가능한 (x, y)의 개수는 최대 301×301개다.
  • 밝기, 총개수, x를 차례대로 비교한다.

관련 서재 장

관련 장

출처: Devin.KR 자체 제작

알고리즘 분류완전 탐색구현

풀이 작성

연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.

JavaScript 시간 제한 = 문제 시간 제한 × 1 + 0초. 문제별 예외는 아래 표에 반영됩니다.

Node.js 전체 API는 지원하지 않습니다.

Ctrl+Enter: 연습 채점 · Tab: 들여쓰기 · Esc 후 Tab: 다음 요소로 이동. 언어별 초안은 이 브라우저에 저장됩니다. JavaScript 입력: require('fs').readFileSync(0, 'utf8'), readline 또는 input().

로그인하면 인증 제출을 사용할 수 있습니다.

풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.

    연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.

    이 브라우저의 연습 기록

      댓글 0

      로그인하면 댓글을 쓸 수 있습니다.

      댓글 접기·펼치기

      언어별 제한

      테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.

      언어엔진(버전)시간 제한메모리
      JavaScript브라우저 JavaScript1000ms / 테스트측정하지 않음
      TypeScriptTypeScript 5.9.31000ms / 테스트측정하지 않음
      Python 3Pyodide 314.0.7 (CPython 3.14 WASM)5000ms / 테스트측정하지 않음
      CYoWASP Clang 222000ms / 테스트측정하지 않음
      C++YoWASP Clang 22 / libc++2000ms / 테스트측정하지 않음
      JavaOpenJDK javac + TeaVM (Java 21 문법)3000ms / 테스트측정하지 않음
      LuaWasmoon 1.16.0 / Lua 5.43000ms / 테스트측정하지 않음
      RubyRuby 3.4 / ruby.wasm 2.10.15000ms / 테스트측정하지 않음
      SchemeBiwaScheme 0.8.35000ms / 테스트측정하지 않음
      PrologSWI-Prolog / swipl-wasm 8.2.55000ms / 테스트측정하지 않음
      PerlPerl 5.28 / WebPerl 0.09-beta5000ms / 테스트측정하지 않음