File tree Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Original file line number Diff line number Diff line change 1+ '''
2+ ์๊ฐ ๋ณต์ก๋: O(1)
3+ - ๋ง์
์ ๋นํธ ์ฐ์ฐ์ ์ด์ฉํ์ฌ ์ํ๋๋ฉฐ, ์ ์ ํฌ๊ธฐ๊ฐ ๊ณ ์ ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ ํ์๊ฐ ์ ํ์ ์
๋๋ค.
4+
5+ ๊ณต๊ฐ ๋ณต์ก๋: O(1)
6+ - ์ถ๊ฐ์ ์ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฑฐ์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
7+ '''
8+
9+ class Solution :
10+ def getSum (self , a : int , b : int ) -> int :
11+ MASK = 0xFFFFFFFF # 32๋นํธ ์ ์ ๋ง์คํฌ
12+ MAX_INT = 0x7FFFFFFF # 32๋นํธ ์ ์์ ์ต๋๊ฐ
13+
14+ while b :
15+ carry = (a & b ) << 1 # ์๋ฆฌ ์ฌ๋ฆผ ๊ณ์ฐ
16+ a = (a ^ b ) & MASK # ๋ง์
์ํ
17+ b = carry & MASK # ์๋ฆฌ ์ฌ๋ฆผ๊ฐ์ ๋ฐ์ํ์ฌ ๋ค์ ์ฐ์ฐ ์งํ
18+
19+ # ์์ ์ฒ๋ฆฌ๋ฅผ ์ํด 32๋นํธ ์ด๊ณผ ์ ๋ณด์
20+ return a if a <= MAX_INT else ~ (a ^ MASK )
You canโt perform that action at this time.
0 commit comments