Santa puts all the presents into the huge sack. In order to let his reindeers rest a bit, he only takes as many reindeers with him as he is required to do. The others may take a nap.

Two reindeers are always required for the sleigh and Santa himself. Additionally he needs 1 reindeer per 30 presents. As you know, Santa has 8 reindeers in total, so he can deliver up to 180 presents at once (2 reindeers for Santa and the sleigh + 6 reindeers with 30 presents each).

Complete the function `reindeers()`, which takes a number of presents and returns the minimum numbers of required reindeers. If the number of presents is too high, throw an error.

Examles:

```python
reindeer(0) # must return 2
reindeer(1) # must return 3
reindeer(30) # must return 3
reindeer(200) # must throw an error
```

Difficulty: introductory

Starter code:

def reindeer(presents):
	

Solutions:
from math import ceil
def reindeer(presents):
  if presents > 180: raise ValueError("Too many presents")
  return ceil(presents / 30.0) + 2

def reindeer(presents):
    assert presents <= 180
    return 2+presents//30+(1 if presents % 30 else 0)

from math import ceil
def reindeer(presents):
  assert presents < 181
  return ceil(presents/30.0) + 2

def reindeer(presents):
    assert presents <= 180
    return 2 + (presents + 29) // 30

from math import ceil

def reindeer(presents):
  if presents > 180:
    raise ValueError
  else:
    return 2 + ceil(presents/30.0)

from math import ceil

# Why is this 6 kyu?
def reindeer(presents):
    if presents > 180: raise Exception("Too many presents")
    return 2 + ceil(presents/30)

from math import ceil


def reindeer(presents):
    assert 0 <= presents <= 180
    return int(2 + (ceil(presents / 30.0)))


def reindeer(presents):
  if presents > 180: raise Exception("Error")
  return 2 + int((presents+29)/30)

import math

def reindeer(presents):
    
    p = math.ceil(presents/30)
    
    if p>6:
    
        raise ValueError("Error")
        
    else:
        
        return p+2