Check If N and Its Double exist
์ฃผ์ด์ง ์ ์๋ฐฐ์ด์์,
ํน์ ์์ n์ ๋ํ์ฌ n*2 ์์๊ฐ ์๋์ง ์ฒดํฌํ๋ ๋ฌธ์ ์ฒ์์๋ ๊ทธ๋ฅ for์ in์ ์ฌ์ฉํ์ฌ์ ๋จ์ํ๊ฒ ์ฒดํฌํ์ง๋ง,
์๊ฐ๋ณต์ก๋๋ฅผ ์ข ๋ ๊ฐ์ ํด๋ณด๊ณ ์ถ์๋ค.๊ทธ๋์ ์๊ฐํ ๋ฐฉ๋ฒ์
1) ๊ฐ์ ์์๋ ๋ ํ์ธํ ํ์๊ฐ ์์ผ๋ ์งํฉ(set)๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ
2) ์ฃผ์ด์ง ๋ฐฐ์ด์ ๋ํด ๋ฐ๋ณต๋ฌธ์ ๋๋ฉด์
3) ์์์ ๊ณฑํ๊ธฐ2๋ ๋๋๊ธฐ2๋ฅผ ํ ๊ฐ์ด set์ ์๋ค๋ฉด add,
4) ์๋ค๋ฉด ๋ฐ๋ก True๋ฅผ, ๋ฐ๋ณต๋ฌธ์ด ์ข ๋ฃ๋ ๋ ๊น์ง ์๋ค๋ฉด False๋ฅผ ๋ฆฌํดํด์ฃผ๊ธฐ๋ก ํ๋ค.์ด๋ ๊ฒ ๋ค์ ํ์ด์ ์๊ฐ๋ณต์ก๋๋ฅผ ์ ๋ฐ์ผ๋ก ์ค์ผ ์ ์์๋ค.
๋ !
class Solution(object): def checkIfExist(self, arr): """ :type arr: List[int] :rtype: bool """ temp = set() temp.add(arr[0]) for a in arr[1:]: if a*2 in temp or a/2.0 in temp: return True else: temp.add(a) return False