about summary refs log tree commit diff
path: root/daily/286easy/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'daily/286easy/README.md')
-rw-r--r--daily/286easy/README.md48
1 files changed, 48 insertions, 0 deletions
diff --git a/daily/286easy/README.md b/daily/286easy/README.md
new file mode 100644
index 0000000..038e44a
--- /dev/null
+++ b/daily/286easy/README.md
@@ -0,0 +1,48 @@
+# [[2016-10-03] Challenge #286 [Easy] Reverse Factorial](https://www.reddit.com/r/dailyprogrammer/comments/55nior/20161003_challenge_286_easy_reverse_factorial/)
+
+## Description
+
+Nearly everyone is familiar with the factorial operator in math. 5! yields 120
+because factorial means "multiply successive terms where each are one less than
+the previous":
+
+    5! -> 5 * 4 * 3 * 2 * 1 -> 120
+
+Simple enough. 
+
+Now let's reverse it. Could you write a function that tells us that "120" is
+"5!"? 
+
+Hint: The strategy is pretty straightforward, just divide the term by
+successively larger terms until you get to "1" as the resultant:
+
+    120 -> 120/2 -> 60/3 -> 20/4 -> 5/5 -> 1 => 5!
+
+## Sample Input
+
+You'll be given a single integer, one per line. Examples:
+
+    120
+    150
+
+## Sample Output
+
+Your program should report what each number is as a factorial, or "NONE" if
+it's not legitimately a factorial. Examples:
+
+    120 = 5!
+    150   NONE
+
+## Challenge Input
+
+    3628800
+    479001600
+    6
+    18
+
+## Challenge Output
+
+    3628800 = 10!
+    479001600 = 12!
+    6 = 3!
+    18  NONE