tvl-depot/assessments/semiprimes/README.md
William Carroll 1a404a58de Expand 10^5 in README
I think it's more readable this way.
2020-12-12 02:41:09 +00:00

30 lines
914 B
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Semiprimes Service
## Introduction
A **composite** is a number containing at least two prime factors. For example:
```
15 = 3 × 5
9 = 3 × 3
12 = 2 × 2 × 3
```
There are ten composites below thirty containing precisely two, not necessarily
distinct, prime factors: `4, 6, 9, 10, 14, 15, 21, 22, 25, 26`. Lets call such
numbers *Semiprimes*.
## Task
- Write a module which provides a function to tell whether a given number, `N`,
is a semiprime. `N` will be less than 100,000
- Please implement an API (RESTful or GraphQL) to factor a given number into two
prime numbers if its a semiprime, otherwise, return an error message.
## Stretch Goals
- Handle the invalid inputs.
- Support batch requests: i.e. users could provide 100 numbers, and the API
return the answer for all.
- Considering this module will be used by a long running service, could you
optimize it to give answers faster?