โจทย์
มีทีม n ทีม กติกา:
- คู่: ทีมคู่ → แมตช์ n/2, ผ่าน n/2
- คี่: ผ่าน 1 ทีมอัตโนมัติ แมตช์ (n-1)/2, ผ่าน (n-1)/2 + 1
ตัวอย่าง: n = 10 → Output: 9
อัลกอริธึม
- วนลูปจน
n == 1 - แต่ละรอบ:
f = n//2,remainder = n%2 - สะสม
ans += f, อัปเดตn = f + remainder
โค้ด Python
def solve(n):
ans = 0
while n != 1:
f = n // 2
remainder = n % 2
ans += f
n = f + remainder
return ans
n = 10
print(solve(n)) # Output: 9
Input / Output
Input: 10
Output: 9