728x90
[๋ฌธ์ ๋งํฌ] ๐
SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com
ํ์ด
์ ์ ๋ค์ง๋ ๋ฐฉ๋ฒ
reversed_num = int(str(num)[::-1])
- ์ ์๋ฅผ str ํ์ผ๋ก ๋ณํํ๊ณ ์ฌ๋ผ์ด์ฑ ํ๋ค.
- ์ฌ๋ผ์ด์ฑ ํ๋ ๋ฐฉ๋ฒ์ [์์:๋:์กฐ๊ฑด] ์ ๋ช ์ํ๋ฉด ๋๋ค.
- ์กฐ๊ฑด์ -1์ด ๋ค์ด๊ฐ๋ฉด ๋งจ ๋ค์์๋ถํฐ ๋งจ ์ ๊ธ์๊น์ง ๊ฑฐ๊พธ๋ก ๋ฌธ์์ด์ ์ฌ๋ผ์ด์ฑ ํ๋ค๋ ๋ป์ด๋ค.
- ๋ค์ง์ ๋ฌธ์์ด์ ๋ค์ intํ์ผ๋ก ๋ณํํ๋ค.
์ ๊ณฑ๊ทผ ๊ตฌํ๋ ๋ฐฉ๋ฒ
import math
sqrt_num = math.sqrt(num)
- math ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ sqrt ํจ์๊ฐ ์กด์ฌํ๋ค. ์ด๋ ์ ๊ณฑ๊ทผ ํจ์์ด๋ค.
- floatํ์ผ๋ก ๋ฐํํ๋ค.
- ๊ตณ์ด ํจ์๋ฅผ ์ฐ์ง ์์๋ ์ ๊ณฑ์ ํตํด ์ ๊ณฑ๊ทผ์ ๊ตฌํด๋ ๋๋ค.
์๋ฏธ์๋ ์์์ ๋ฒ๋ฆฌ๊ธฐ
sqrt_num = "{:g}".format(sqrt_num)
- sqrt_num์ด 11.0์ด๋ผ๋ฉด ๋ค์ 0์ ์๋ฏธ ์์ผ๋ฏ๋ก ๋ฒ๋ ค์ง๋ค.
- str ํ์ผ๋ก ๋ฐํํ๋ค.
Solution
import math
test_case = int(input())
for tc in range(1, test_case + 1):
a, b = map(int, input().split())
result = 0
for i in range(a, b + 1):
reversed_num = int(str(i)[::-1]) #์ ์ ๋ค์ง๊ธฐ
sqrt_num = math.sqrt(i) #์ ๊ณฑ๊ทผ, sqrt๋ floatํ์ผ๋ก ๋ฐํ
sqrt_num = "{:g}".format(sqrt_num) # <class 'str'> #์์์ ๋ค๊ฐ 0์ด๋ฉด ๋ฒ๋ฆฌ๊ธฐ
reversed_sqrt_num = str(sqrt_num)[::-1] #์ ๊ณฑ๊ทผ ๋ค์ง๊ธฐ
if i == reversed_num and sqrt_num == reversed_sqrt_num: #ํฐ๋ฆฐ๋๋กฌ ํ์ธ
result += 1
print("#%d %s" % (tc, result))
๐ฉ๐ป ํ๊ณ
ํ์ ํ์ธ ๋ฐฉ๋ฒ
print(type(sqrt_num))
# ์ถ๋ ฅ ๊ฒฐ๊ณผ : <class 'str'>
ํ๋ณํ ๋๋ฌธ์ ์ ๋ฅผ ์ผ๋ค. ์ด๋ฒ ๊ธฐํ์ ์๋ก์ด ๋ฐฉ๋ฒ์ ๋ง์ด ์๊ฒ ๋ผ์ ๋ณด๋์ ์๋ค.
728x90
'๐งฉ Algorithm > SWEA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SWEA] 13229. ์ผ์์ผ (Python/D3) (0) | 2024.10.21 |
|---|---|
| [SWEA] 1289. ์์ฌ์ ๋ฉ๋ชจ๋ฆฌ ๋ณต๊ตฌํ๊ธฐ (Python/D3) (0) | 2024.10.20 |
| [SWEA] 11688. Calkin-Wilf tree 1 (Python/D3) (1) | 2024.10.20 |
| [SWEA] 4406. ๋ชจ์์ด ๋ณด์ด์ง ์๋ ์ฌ๋ (Python/D3) (0) | 2024.10.20 |
| [SWEA] 12221. ๊ตฌ๊ตฌ๋จ2 (Python/D3) (0) | 2024.10.20 |