```go
package main
import "fmt"
func main() {
var n int
fmt.Scan(&n)
visited := make([]bool, n)
pos := 0
visited[0] = true
count := 1
limit := 2 * n
for k := 1; k <= limit; k++ {
if count == n {
break
}
pos = (pos + k) % n
if !visited[pos] {
visited[pos] = true
count++
}
}
if count == n {
fmt.Println("YES")
} else {
fmt.Println("NO")
}
}
```