6 kyu

How Much?

194 of 6,825g964

Description:

I always thought that my old friend John was rather richer than he looked, but I never knew exactly how much money he actually had. One day (as I was plying him with questions) he said:

  • "Imagine I have between m and n Zloty..." (or did he say Quetzal? I can't remember!)
  • "If I were to buy 9 cars costing c each, I'd only have 1 Zloty (or was it Meticals?) left."
  • "And if I were to buy 7 boats at b each, I'd only have 2 Ringglets (or was it Zloty?) left."

Could you tell me in each possible case:

  1. how much money f he could possibly have ?
  2. the cost c of a car?
  3. the cost b of a boat?

So, I will have a better idea about his fortune. Note that if m-n is big enough, you might have a lot of possible answers.

Each answer should be given as ["M: f", "B: b", "C: c"] and all the answers as [ ["M: f", "B: b", "C: c"], ... ]. "M" stands for money, "B" for boats, "C" for cars.

Note: m, n, f, b, c are positive integers, where 0 <= m <= n or m >= n >= 0. m and n are inclusive.

Examples:

howmuch(1, 100)      => [["M: 37", "B: 5", "C: 4"], ["M: 100", "B: 14", "C: 11"]]
howmuch(1000, 1100)  => [["M: 1045", "B: 149", "C: 116"]]
howmuch(10000, 9950) => [["M: 9991", "B: 1427", "C: 1110"]]
howmuch(0, 200)      => [["M: 37", "B: 5", "C: 4"], ["M: 100", "B: 14", "C: 11"], ["M: 163", "B: 23", "C: 18"]]

Explanation of the results for howmuch(1, 100):

  • In the first answer his possible fortune is 37:
  • so he can buy 7 boats each worth 5: 37 - 7 * 5 = 2
  • or he can buy 9 cars worth 4 each: 37 - 9 * 4 = 1
  • The second possible answer is 100:
  • he can buy 7 boats each worth 14: 100 - 7 * 14 = 2
  • or he can buy 9 cars worth 11: 100 - 9 * 11 = 1

Note

See "Sample Tests" to know the format of the return.

Fundamentals

More By Author:

Check out these other kata created by g964

Stats:

CreatedJul 26, 2015
PublishedJul 26, 2015
Warriors Trained32583
Total Skips10561
Total Code Submissions38871
Total Times Completed6825
Ruby Completions194
Python Completions1708
JavaScript Completions1188
Haskell Completions98
Java Completions814
C# Completions417
Clojure Completions74
CoffeeScript Completions11
TypeScript Completions144
C++ Completions599
Elixir Completions83
PHP Completions283
Crystal Completions8
F# Completions40
C Completions181
Rust Completions222
Swift Completions174
Go Completions297
R Completions58
Shell Completions54
OCaml Completions18
Kotlin Completions154
Fortran Completions10
Julia Completions23
Scala Completions84
PowerShell Completions28
Nim Completions6
Reason Completions4
Racket Completions15
Prolog Completions9
Pascal Completions13
Factor Completions10
Lua Completions34
Dart Completions118
Perl Completions8
Elm Completions9
D Completions9
Erlang Completions3
Total Stars381
% of votes with a positive feedback rating80% of 1051
Total "Very Satisfied" Votes718
Total "Somewhat Satisfied" Votes246
Total "Not Satisfied" Votes87
Ad
Contributors
  • g964 Avatar
  • GiacomoSorbi Avatar
  • anter69 Avatar
  • Blind4Basics Avatar
  • Voile Avatar
  • Bubbler Avatar
  • FArekkusu Avatar
  • monadius Avatar
  • hobovsky Avatar
  • trashy_incel Avatar
  • Kacarott Avatar
  • Just4FunCoder Avatar
  • saudiGuy Avatar
Ad