6 kyu

How Much?

194 of 6,800g964

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 Trained32548
Total Skips10548
Total Code Submissions38760
Total Times Completed6800
Ruby Completions194
Python Completions1699
JavaScript Completions1187
Haskell Completions98
Java Completions811
C# Completions417
Clojure Completions74
CoffeeScript Completions11
TypeScript Completions142
C++ Completions598
Elixir Completions82
PHP Completions283
Crystal Completions8
F# Completions40
C Completions181
Rust Completions221
Swift Completions172
Go Completions296
R Completions57
Shell Completions52
OCaml Completions18
Kotlin Completions153
Fortran Completions10
Julia Completions23
Scala Completions83
PowerShell Completions28
Nim Completions6
Reason Completions4
Racket Completions15
Prolog Completions9
Pascal Completions13
Factor Completions10
Lua Completions34
Dart Completions118
Perl Completions8
Elm Completions9
D Completions8
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