์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- dataframe
- ์๋ํด๋ผ์ฐ๋
- iloc
- t-test
- Lambda
- ADP
- ํฌ๋กค๋ง
- pandas
- ์ธ๋์ํ๋ง
- ๋ ๋ฆฝํ๋ณธ
- ๋ฐ์ดํฐ๋ถ์์ ๋ฌธ๊ฐ
- PCA
- DBSCAN
- ADsP
- LDA
- ํ์ด์ฌ
- ์ค๋ฒ์ํ๋ง
- ๊ตฐ์งํ
- datascience
- ๋ฐ์ดํฐ๋ถ๊ท ํ
- ํ ์คํธ๋ถ์
- ๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ
- ๋์ํ๋ณธ
- ๋ฐ์ดํฐ๋ถ์์ค์ ๋ฌธ๊ฐ
- ๋ฐ์ดํฐ๋ถ์
- numpy
- opencv
- Python
- ์ฃผ์ฑ๋ถ๋ถ์
- ๋น ๋ฐ์ดํฐ
Data Science LAB
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (์ ์ฐ๊ธฐ) ๋ณธ๋ฌธ
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (์ ์ฐ๊ธฐ)
ใ ใ ใ ใ 2022. 12. 13. 05:131. ๋ฌธ์ ์ค๋ช
์ขํํ๋ฉด์ ์ข์ํ๋ ์ง์๋ x์ถ๊ณผ y์ถ์ด ์ง๊ตํ๋ 2์ฐจ์ ์ขํํ๋ฉด์ ์ ์ ์ฐ์ผ๋ฉด์ ๋๊ณ ์์ต๋๋ค. ์ง์๋ ๋ ์์ ์ ์ k, d๊ฐ ์ฃผ์ด์ง ๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์ ์ฐ์ผ๋ ค ํฉ๋๋ค.
- ์์ (0, 0)์ผ๋ก๋ถํฐ x์ถ ๋ฐฉํฅ์ผ๋ก a*k(a = 0, 1, 2, 3 ...), y์ถ ๋ฐฉํฅ์ผ๋ก b*k(b = 0, 1, 2, 3 ...)๋งํผ ๋จ์ด์ง ์์น์ ์ ์ ์ฐ์ต๋๋ค.
- ์์ ๊ณผ ๊ฑฐ๋ฆฌ๊ฐ d๋ฅผ ๋๋ ์์น์๋ ์ ์ ์ฐ์ง ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, k๊ฐ 2, d๊ฐ 4์ธ ๊ฒฝ์ฐ์๋ (0, 0), (0, 2), (0, 4), (2, 0), (2, 2), (4, 0) ์์น์ ์ ์ ์ฐ์ด ์ด 6๊ฐ์ ์ ์ ์ฐ์ต๋๋ค.
์ ์ k์ ์์ ๊ณผ์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ํ๋ด๋ ์ ์ d๊ฐ ์ฃผ์ด์ก์ ๋, ์ ์ด ์ด ๋ช ๊ฐ ์ฐํ๋์ง return ํ๋ solution ํจ์๋ฅผ ์์ฑํ์ธ์.
2. ์ ํ ์ฌํญ
- 1 ≤ k ≤ 1,000,000
- 1 ≤ d ≤ 1,000,000
3. ๋ด ํ์ด
import math
def solution(k, d):
answer = 0
for i in range(0,d+1,k):
answer += math.floor((d**2 - i**2)**0.5//k)+1
return answer
1. for ๋ฌธ์ ์ฌ์ฉํ์ฌ 0๋ถํฐ d๊น์ง step = k๋ก ๋ฐ๋ณต
2. ์ ํด๋ผ๋์ ๊ฑฐ๋ฆฌ ๊ณต์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ d^2 - i^2 ์ ์ฌ์ฉํ์ฌ (i,j)์ขํ์์ j์ ๋ค์ด๊ฐ ์ ์๋ ๊ฐ์ฅ ํฐ ์๋ฅผ ๊ตฌํจ
3. j์ ์ต๋๊ฐ์ k๋ก ๋๋ ๋ชซ์ 1์ ๋ํ ๊ฐ์ answer์ ์ถ๊ฐ (k์นธ์ฉ ์ด๋ํด์ผ ํ๊ธฐ ๋๋ฌธ)