Submit solution

Points:
5

Time limit:
2.0s

Memory limit:
64M

Problem type

Allowed languages

Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, ~~CommonLisp~~, D, Dart, F#, Forth, Fortran, Go, ~~Groovy~~, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, ~~Nim~~, ~~ObjC~~, OCaml, ~~Octave~~, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

##### DWITE Online Computer Programming Contest, December 2009, Problem 2

There are a few different rounding methods. The most common one rounds up/down from 5. Another one rounds up/down depending on the number being even or odd (this has to do with statistical bias). Here we'll implement a yet another type of rounding — rounding a number to the closest whole integer in the Fibonacci sequence. *If two elements in the sequence are equally far away,* **round up**.

The Fibonacci sequence is defined as:

Which produces a sequence of:

The input will contain 5 lines, integers .

The output will contain 5 lines, each a corresponding integer rounded to the closest number from the Fibonacci sequence.

#### Sample Input

```
1
2
4
22
1000000000
```

#### Sample Output

```
1
2
5
21
1134903170
```

## Comments