package main import ( "fmt" "math" ) func main() { var n, k, ans int _, _ = fmt.Scan(&n, &k) lower := k - 1 // 先頭より小さい数字の数 if k != n && n >= 3 { // Kが最大じゃなく、先頭と最大以外に数字がある ans++ } if lower > 0 { // Kより小さくて好きに並び替えられる数字がある ans += int(math.Pow(2, float64(lower))) - 1 } fmt.Println(ans) }