The HackerRank challenge of today was a problem with conditionals. Given an integer `$n$`

, the goal was to perform the following actions:

- If
`$n$`

is odd, print`Weird`

- If
`$n$`

is even and in the range`$[2, 5]$`

, print`Not Weird`

- If
`$n$`

is even and in the range`$[6, 20]$`

, print`Weird`

- If
`$n$`

is even and greater than`$20$`

, print`Weird`

The input to the program is simply the number `$n$`

and the result is a single line saying that the number is weird or not. My solution was

```
package main
import "fmt"
func main() {
// read input
n := 0
fmt.Scanf("%v\n", &n)
var answer string
// Notice bitwise operation ->
// no division to check
if n&1 != 0 {
answer = "Weird"
} else {
if (n >= 2 && n <= 5) || n > 20 {
answer = "Not Weird"
} else {
answer = "Weird"
}
}
fmt.Println(answer)
}
```

There is a disclaimer though: I initially used `n % 2 == 1`

but this does an integer division and when I saw that I could just use a bitwise operation to check if the number was odd or not, I changed it.

That’s all for this post. Thanks for reading!