Skip to content

Commit c6b4a7a

Browse files
committed
백준 1074번 Z
문제 링크: https://www.acmicpc.net/problem/1074
1 parent e110fdd commit c6b4a7a

14 files changed

+88
-0
lines changed

백준 1074번 Z/main.py

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import sys
2+
3+
4+
def solve():
5+
N, r, c = map(int, sys.stdin.readline().strip().split(' '))
6+
length = 2 ** N
7+
8+
answer = rec(length, length // 2, r, c, 0)
9+
print(answer)
10+
11+
12+
def rec(length, half, r, c, answer):
13+
if half == 1:
14+
if r == 0 and c == 0:
15+
return answer
16+
if r == 0 and c == 1:
17+
return answer + 1
18+
if r == 1 and c == 0:
19+
return answer + 2
20+
21+
return answer + 3
22+
23+
br = r >= half
24+
bc = c >= half
25+
26+
if br:
27+
answer += (half * half * 2)
28+
r -= half
29+
30+
if bc:
31+
answer += (half * half)
32+
c -= half
33+
34+
return rec(length, half // 2, r, c, answer)
35+
36+
37+
if __name__ == '__main__':
38+
solve()

백준 1074번 Z/test1.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2 3 1

백준 1074번 Z/test1_answer.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
11

백준 1074번 Z/test2.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3 7 7

백준 1074번 Z/test2_answer.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
63

백준 1074번 Z/test3.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1 0 0

백준 1074번 Z/test3_answer.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
0

백준 1074번 Z/test4.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
4 7 7

백준 1074번 Z/test4_answer.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
63

백준 1074번 Z/test5.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
10 511 511

0 commit comments

Comments
 (0)