Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
package main import ( "fmt" "math" ) // Fungsi untuk mengecek apakah kembalian bisa dibentuk dengan koin yang ada func canMakeChange(coins []int, amount int) bool { dp := make([]bool, amount+1) dp[0] = true for _, coin := range coins { for i := coin; i <= amount; i++ { if dp[i-coin] { dp[i] = true } } } return dp[amount] } // Fungsi untuk menghitung jumlah minimum koin yang diperlukan func minCoins(coins []int, amount int) int { dp := make([]int, amount+1) for i := range dp { dp[i] = math.MaxInt32 } dp[0] = 0 for _, coin := range coins { for i := coin; i <= amount; i++ { dp[i] = min(dp[i], dp[i-coin]+1) } } if dp[amount] == math.MaxInt32 { return -1 } return dp[amount] } // Fungsi untuk menghitung jumlah kombinasi koin yang bisa membentuk nilai kembalian func countWays(coins []int, amount int) int { dp := make([]int, amount+1) dp[0] = 1 for _, coin := range coins { for i := coin; i <= amount; i++ { dp[i] += dp[i-coin] } } return dp[amount] } // Fungsi untuk menghitung nilai minimum antara dua integer func min(a, b int) int { if a < b { return a } return b } func main() { coins := []int{1, 2, 5, 10} amount := 100 - 63 // Kembalian adalah 37 // a. Apakah nominal kembalian dapat dibentuk dari koin pecahan tersebut? canMake := canMakeChange(coins, amount) fmt.Printf("a. Apakah nominal kembalian dapat dibentuk: %v\n", canMake) // b. Berapa jumlah minimum koin yang dapat Anda kembalikan kepada pembeli? minCoin := minCoins(coins, amount) fmt.Printf("b. Jumlah minimum koin: %d\n", minCoin) // c. Berapa banyak kombinasi koin untuk membentuk nilai kembalian tersebut? ways := countWays(coins, amount) fmt.Printf("c. Jumlah kombinasi koin: %d\n", ways) }
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)