New: AI engineering, Kubernetes, cybersecurity, family learning, and expert community pathways.Explore

Practice Mode • Dynamic Programming • easy

Fee Denomination Planner

100 points

Minimize the number of allowed fee units needed for an exact total.

Problem

You are implementing minimize the number of allowed fee units needed for an exact total. The input is one JSON value. Return exactly the JSON or scalar result described by the examples, with stable ordering and no extra logging. Compute the fewest reusable denominations needed to reach an exact amount. Explain your reasoning and complexity during interview review; the judge evaluates only the returned result.
Input contract

One UTF-8 JSON value matching the structures shown in the examples.

Output contract

One deterministic JSON value or scalar with no explanatory text.

Target complexity

O(amount·coins) time, O(amount) space

Judge protocol

function-stdin-json-v1

Examples

Example 1
Input: {"amount":7,"coins":[1,4,4]}
Output: 4

This example demonstrates the core dynamic programming invariant.

Example 2
Input: {"amount":3,"coins":[2]}
Output: -1

This example covers the empty or minimum boundary.

Constraints

  • Input is valid UTF-8 JSON and is at most 64 KB.
  • Output must be deterministic for identical input.
  • Do not use network access, persistent filesystem writes, subprocesses, or environment secrets.
  • Handle the empty or minimum boundary shown in the examples.
Progressive hints

Sign in to reveal hints one at a time.

Integrity: hidden tests, editorial solutions, and assessment-only cases are never sent to the browser as answer keys. Final execution occurs only in the separately isolated runner.
Execution unavailable until runner deployment and certificationdisabled • pending

Sign in to code

You can review the complete problem publicly. Sign in to save encrypted drafts and submit to the isolated runner.

Sign in