2025-08-09 23:05:33 +09:00

43 lines
951 B
Swift

import Foundation
if let input = readLine(),
let nums:[Int] = {
let temp = input.split(separator: " ").compactMap({Int($0)})
return temp.count == 3 ? temp : nil
}(){
var (N, r, c) = (nums[0],nums[1],nums[2])
var n = N
var result = 0
while n > 0 {
let half = Int(pow(2.0, Double(n-1)))
let quatorArea = half * half
switch (r,c)
{
case (0..<half, 0..<half) :
break
case (0..<half, half..<2*half) :
result += quatorArea
c -= half
case (half..<2*half, 0..<half) :
result += quatorArea*2
r -= half
case (half..<2*half, half..<2*half) :
result += quatorArea*3
c -= half
r -= half
default :
break
}
n -= 1
}
print(result)
}
else{
print("error")
}