๋ฌธ์ ์ค๋ช
๊ทธ๋ ์์๋ ์ซ์ 0์ด ์ ํ ๋ธ๋ก๋ค์ด ์ค์น๋ ๋๋ก์ ๋ค๋ฅธ ์ซ์๊ฐ ์ ํ ๋ธ๋ก๋ค์ ์ค์นํ๊ธฐ๋ก ํ์์ต๋๋ค. ์ซ์ ๋ธ๋ก์ ์ค์นํ๋ ๊ท์น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ธ๋ก์ ์ ํ ๋ฒํธ๊ฐ n ์ผ ๋, ๊ฐ์ฅ ์ฒซ ๋ธ๋ก์ n * 2๋ฒ์งธ ์์น์ ์ค์นํฉ๋๋ค. ๊ทธ ๋ค์์ n * 3, ๊ทธ ๋ค์์ n * 4, ...์์น์ ์ค์นํฉ๋๋ค. ๊ธฐ์กด์ ์ค์น๋ ๋ธ๋ก์ ๋นผ๊ณ ์๋ก์ด ๋ธ๋ก์ ์ง์ด๋ฃ์ต๋๋ค.
๋ธ๋ก์ 1์ด ์ ํ ๋ธ๋ก๋ถํฐ ์ซ์๋ฅผ 1์ฉ ์ฆ๊ฐ์ํค๋ฉฐ ์์๋๋ก ์ค์นํฉ๋๋ค. ์๋ฅผ ๋ค์ด 1์ด ์ ํ ๋ธ๋ก์ 2, 3, 4, 5, ... ์ธ ์์น์ ์ฐ์ ์ค์นํฉ๋๋ค. ๊ทธ ๋ค์ 2๊ฐ ์ ํ ๋ธ๋ก์ 4, 6, 8, 10, ... ์ธ ์์น์ ์ค์นํ๊ณ , 3์ด ์ ํ ๋ธ๋ก์ 6, 9, 12... ์ธ ์์น์ ์ค์นํฉ๋๋ค.
์ด๋ ๊ฒ 3์ด ์ ํ ๋ธ๋ก๊น์ง ์ค์นํ๊ณ ๋๋ฉด ์ฒซ 10๊ฐ์ ๋ธ๋ก์ ์ ํ ๋ฒํธ๋ [0, 1, 1, 2, 1, 3, 1, 2, 3, 2]๊ฐ ๋ฉ๋๋ค.
๊ทธ๋ ์๋ ๊ธธ์ด๊ฐ 1,000,000,000์ธ ๋๋ก์ 1๋ถํฐ 10,000,000๊น์ง์ ์ซ์๊ฐ ์ ํ ๋ธ๋ก๋ค์ ์ด์ฉํด ์์ ๊ท์น๋๋ก ๋ชจ๋ ์ค์น ํ์ต๋๋ค.
๊ทธ๋ ์์ ์์ฅ๋์ ํน์ ๊ตฌ๊ฐ์ ์ด๋ค ๋ธ๋ก์ด ๊น๋ ค ์๋์ง ์๊ณ ์ถ์ต๋๋ค.
๊ตฌ๊ฐ์ ๋ํ๋ด๋ ๋ ์ ์ begin, end ๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด ์ง ๋, ๊ทธ ๊ตฌ๊ฐ์ ๊น๋ ค ์๋ ๋ธ๋ก์ ์ซ์ ๋ฐฐ์ด์ returnํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ํ ์ฌํญ
- 1 ≤ begin ≤ end ≤ 1,000,000,000
- end - begin ≤ 5,000
์ ์ถ๋ ฅ ์
begin | end | result |
1 | 10 | [0, 1, 1, 2, 1, 3, 1, 4, 3, 5] |
์ ์ถ๋ ฅ ์ ์ค๋ช
์
์ถ๋ ฅ ์ #1
๋ค์๊ณผ ๊ฐ์ด ๋ธ๋ญ์ด ๊น๋ฆฌ๊ฒ ๋ฉ๋๋ค.
โป ๊ณต์ง - 2019๋
4์ 07์ผ ํ
์คํธ์ผ์ด์ค๊ฐ ๋ณ๊ฒฝ๋์์ต๋๋ค.
โป ๊ณต์ง - 2023๋
2์ 09์ผ ์ง๋ฌธ๊ณผ ํ
์คํธ ์ผ์ด์ค๊ฐ ์์ ๋์์ต๋๋ค. ๊ธฐ์กด์ ํต๊ณผ๋์๋ ์ฝ๋๊ฐ ํต๊ณผ๋์ง ์์ ์ ์์ต๋๋ค.
ํ์ด
- ์ฒ์ ๋ณด๊ณ ์์ ๋ฌธ์ ์ธ๊ฐ? ์๊ฐํ๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ ํ์ฑ ํ ์คํธ 15๊ฐ์ ํจ์จ์ฑ ํ ์คํธ 6๊ฐ๊ฐ ์์ผ๋๊น ์์ ์ค๋ช ๋๋ก 1๋ฒ ๋ฒฝ๋ ๋ถํฐ ์์๋๋ก ๊น๋ ๊ฑธ๋ก ๊ตฌํํด๋ฒ๋ฆฌ๋ฉด ๋น๊ทผ ์๊ฐ์ด๊ณผ๊ฐ ๋ ๊ฒ์ด๋ค.
- ๊ทธ๋ผ ์ด๋ป๊ฒ ํด์ผ๋ ๊น? ํ๋ฐฉ์ ํ์ด์ผ ํ๋ ๋ฌธ์ ์๋๊น?
- ๊ทผ๋ฐ ์ด๊ฑฐ ๋ฑ ๋ณด๋๊น ์์ ์ ์ ์ธํ ๊ฐ์ฅ ํฐ ์ฝ์๋ฅผ ์ฐพ๋ ๋ฌธ์ ๋ค.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
0 | 1 | 1 | 2 | 1 | 3 | 1 | 4 | 3 | 5 |
ํ์ด์ฌ math.gcd๋ก ๋๋?๋ฉ์ฒญ์! ๊ทธ๊ฑด ๊ณต๋ฐฐ์์์... ใ ใ ใ - ๋ค์ ๋ด๋ด ์ผ๋จ ์ง์๋ฉด n/2๋ค.
- ํ์๊ฐ ๋ฌธ์ .
- ํ์๋ 1๋ถํฐ sqrt(n)๊น์ง ๊ตฌํด์ผ๋๋?
- ํ์์ ์์ ์ ์ ์ธํ ๊ฐ์ฅ ํฐ ์ฝ์
- 1ํธ
- ์ ํ์ฑ 13๋ฒ ์คํจ.
- ํจ์จ์ฑ ์ฌ ์คํจ(์๊ฐ ์ด๊ณผ ์๋)
import math
def solution(begin, end):
answer =[]
def odd_check(n):
if n == 1:
return 0
else:
for i in range(3, int(math.sqrt(n)+1)):
if n % i == 0:
return n // i
break
return 1
for i in range(begin, end+1):
if i % 2 == 0:
answer.append(i//2)
else:
answer.append(odd_check(i))
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.08ms, 10.3MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.11ms, 10MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.11ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.06ms, 10.2MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.03ms, 10.2MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.15ms, 10.1MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.03ms, 10MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.09ms, 10.2MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.15ms, 10.3MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.11ms, 10.2MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.04ms, 10.1MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.06ms, 10.1MB)
ํ
์คํธ 13 ใ ์คํจ (0.00ms, 10.3MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.21ms, 10.2MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ์คํจ (178.73ms, 10.6MB)
ํ
์คํธ 2 ใ ์คํจ (244.52ms, 10.6MB)
ํ
์คํธ 3 ใ ์คํจ (298.63ms, 10.5MB)
ํ
์คํธ 4 ใ ์คํจ (351.76ms, 10.5MB)
ํ
์คํธ 5 ใ ์คํจ (364.34ms, 10.5MB)
ํ
์คํธ 6 ใ ์คํจ (316.73ms, 10.5MB)
- ๊ณต์ง์ฌํญ์ ๋ญ๊ฐ ๋ฐ๋์๋ค๊ณ ํ์์ง?
- ์... ๋ฒฝ๋์ด ๋ ์ ์ด...
- "๊ทธ๋ ์๋ ๊ธธ์ด๊ฐ 1,000,000,000์ธ ๋๋ก์ 1๋ถํฐ 10,000,000๊น์ง์ ์ซ์๊ฐ ์ ํ ๋ธ๋ก๋ค์ ์ด์ฉํด"
- ์ฌ์ธ ์ค ์์๋๋ฐ ๊ฐ์๊ธฐ ์ด๋ ค์์ก๋ค. ใ ใ ใ
- ์ง์๋ ํ์๊ฐ ๋๊ณ , ์์ฒญ ํฐ ์์๊ฐ ๋์ค๋ฉด ๋ชป ํธ๋ ๋ฌธ์ ๊ฐ ๋์ด๋ฒ๋ ธ๋ค...
import sys
import math
sys.setrecursionlimit(10**5)
def solution(begin, end):
answer =[]
def even_check(n):
n //= 2
if n > 10000000:
if n % 2 == 0:
n = even_check(i)
else:
n = odd_check(i)
return n
def odd_check(n):
if n == 1:
return 0
for i in range(2, n):
if n % i == 0:
if n // i <= 10000000:
return n // i
break
return 1
for i in range(begin, end+1):
if i % 2 == 0:
answer.append(even_check(i))
else:
answer.append(odd_check(i))
return answer
- ์ฌ๊ท๋ฅผ ์ค์ฌ์ผ ํ๋๋ฐ ์ง์ ๋ฐ์ ๋ชป ์ค์...
import sys
import math
sys.setrecursionlimit(10**5)
def solution(begin, end):
answer =[]
def even_check(n):
n //= 2
while n > 10000000:
if n % 2 != 0:
n = odd_check(i)
else:
n //= 2
return n
def odd_check(n):
if n == 1:
return 0
for i in range(3, n, 2):
if n % i == 0:
if n // i <= 10000000:
return n // i
break
return 1
for i in range(begin, end+1):
if i % 2 == 0:
answer.append(even_check(i))
else:
answer.append(odd_check(i))
return answer
- ์ฑ์ ๊ฐ์ฆ์!
- ํ์ง๋ง ํจ์จ์ฑ ํต๊ณผ ๋ชป ํ ๋ฏ... ์ญ์๋...
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (12.02ms, 9.94MB)
ํ
์คํธ 2 ใ ํต๊ณผ (50.41ms, 10.1MB)
ํ
์คํธ 3 ใ ํต๊ณผ (28.46ms, 10.2MB)
ํ
์คํธ 4 ใ ํต๊ณผ (18.05ms, 10.1MB)
ํ
์คํธ 5 ใ ํต๊ณผ (3.38ms, 10.1MB)
ํ
์คํธ 6 ใ ํต๊ณผ (37.07ms, 10.1MB)
ํ
์คํธ 7 ใ ํต๊ณผ (5.02ms, 10.1MB)
ํ
์คํธ 8 ใ ํต๊ณผ (12.03ms, 10.2MB)
ํ
์คํธ 9 ใ ํต๊ณผ (53.30ms, 10.1MB)
ํ
์คํธ 10 ใ ํต๊ณผ (14.35ms, 10.2MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.06ms, 10.1MB)
ํ
์คํธ 12 ใ ํต๊ณผ (11.87ms, 10.2MB)
ํ
์คํธ 13 ใ ํต๊ณผ (695.50ms, 10.3MB)
ํ
์คํธ 14 ใ ํต๊ณผ (16.21ms, 10.2MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.02ms, 10.2MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 2 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 3 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 4 ใ ์คํจ (์๊ฐ ์ด๊ณผ)
ํ
์คํธ 5 ใ
ํ
์คํธ 6 ใ
- ์์๊ฐ ํฌํจ๋์ด ์๋์ง ์ฐพ์์ผ ๋จ.
- ์๋ผํ ์คํ ๋ค์ค์ ์ฒด๋ก ์ฒ๋ง๊น์ง ์ซ์์ค์ ์์๋ฅผ ์ ์ฅํด๋๋ ค๊ณ ํ์ผ๋
import math
def solution(begin, end):
answer =[]
MAX = 10000001
eratosthenes_sieve = [True] * MAX # ์์๊ฐ ๋ค์ด์๋ ๋ฆฌ์คํธ
eratosthenes_sieve[0] = eratosthenes_sieve[1] = False
for i in range(2,MAX):
if eratosthenes_sieve[i]:
for j in range(2, int(MAX ** 0.5) + 1):
if i % j == 0: # i๊ฐ ์์์ธ ๊ฒฝ์ฐ, i์ ๋ฐฐ์๋ฅผ ๋ชจ๋ ์ ๊ฑฐํ๋ค
for k in range(i, MAX, i):
eratosthenes_sieve[k] = False
print(eratosthenes_sieve[6])
- ์คํ์๊ฐ์ด 10์ด๋ฅผ ์ด๊ณผํ์ฌ ์คํ์ด ์ค๋จ๋จ.
- ์ด๋ฐ ์ผ์ด์ค๊ฐ ๋ช๊ฐ ์์ ๊ฒ์ด๋ค...๋ผ๋๊ฑด๊ฐ?
- ... ์ํฌ์๊ธฐ๋ค... ๋ฌด์ง์ฑ ์ฝ๋ฉ ๊ฐ์ฆ์!!!
- ์๋ฒฝ 1์... ์ง์ง ํฌ๊ธฐ๋ค. ์์ ๋ฌด์ง์ฑ์ผ๋ก ๊ฐ๋ค....
- ํ?
- ๊ทธ๋ฅ ๋ฌธ์ ์์ ๋งํ๋ ๋๋ก ์ฝ๋ฉํจ.
- ์ด๊ฒ ์ค๋ง ๊ตฌํ ๋ฌธ์ ์๋ค๋... ใทใทใท
- ์์ ์ ์ ์ธํ ๊ฐ์ฅ ํฐ ์ฝ์ ๊ตฌํ๋ ๊ฒ๋ง ๋ ๋ฌด์ง์ฑ์ผ๋ก ํ์ผ๋ฉด ๋นจ๋์ํ ๋ฐ ์์ฝ๋ค.
def get_larger_but_smaller_than_10M(n):
divisors = [1]
for i in range(2, int(n**0.5)+1):
if n % i == 0:
divisors.append(i)
if i != n//i:
divisors.append(n//i)
for i in range(len(divisors)):
if divisors[i] > 10000000:
divisors[i] = 1
return max(divisors)
def solution(begin, end):
length = end - begin + 1
array = [0] * length
for i in range(begin, end+1):
if array[i-begin] == 0:
array[i-begin] = get_larger_but_smaller_than_10M(i)
for j in range(i*2, end+1, i):
array[j-begin] = i
if begin == 1:
array[0] = 0
return array
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (1.28ms, 10.3MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.83ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (1.01ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.39ms, 10.3MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.23ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (1.72ms, 10.3MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.25ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.62ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (1.58ms, 10.4MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.67ms, 10.4MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.56ms, 10.3MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.46ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.26ms, 10.4MB)
ํ
์คํธ 14 ใ ํต๊ณผ (1.60ms, 10.3MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.01ms, 10.3MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (2432.80ms, 10.7MB)
ํ
์คํธ 2 ใ ํต๊ณผ (3823.08ms, 10.8MB)
ํ
์คํธ 3 ใ ํต๊ณผ (4690.62ms, 10.6MB)
ํ
์คํธ 4 ใ ํต๊ณผ (6079.13ms, 10.6MB)
ํ
์คํธ 5 ใ ํต๊ณผ (6633.37ms, 10.7MB)
ํ
์คํธ 6 ใ ํต๊ณผ (4767.64ms, 10.6MB)
- ์ง์ฑ์ด ์๋ ๊ณ ์๋ค์ ํ์ด...
- ๋ค, ์ ๋ ์ฒ์์๋ ์ด ์ ๋ ๊ธธ์ด์ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐํ์๋ฏธ๋ค.
- ๊ทผ๋ฐ ๊ทธ๋ ์๋์๋ค๊ตฌ์.
def solution(begin, end):
answer = []
#์ฝ์ ์ค ๊ฐ์ฅ ํฐ ์ ์ฐพ๊ธฐ
for i in range(begin,end+1):
if i>1:
a=1
for j in range(2,int(i**(1/2))+1):
if i%j==0:
a=j
if i//j<=10000000:
a=i//j
break
answer.append(a)
elif i==1:
answer.append(0)
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.11ms, 10.2MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.14ms, 10.3MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.25ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.08ms, 10.2MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.05ms, 10.2MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.18ms, 10.2MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.05ms, 10.3MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.07ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.35ms, 10.2MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.13ms, 10.2MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.06ms, 10.3MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.06ms, 10.4MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.26ms, 10.3MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.44ms, 10.1MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.02ms, 10.2MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (509.04ms, 10.7MB)
ํ
์คํธ 2 ใ ํต๊ณผ (834.14ms, 10.8MB)
ํ
์คํธ 3 ใ ํต๊ณผ (1134.45ms, 10.5MB)
ํ
์คํธ 4 ใ ํต๊ณผ (1602.54ms, 10.6MB)
ํ
์คํธ 5 ใ ํต๊ณผ (1862.51ms, 10.6MB)
ํ
์คํธ 6 ใ ํต๊ณผ (1333.27ms, 10.7MB)
from math import sqrt
def get_div(n):
if n == 1:
return 0
elif n <= 3:
return 1
tmp = []
for i in range(2, int(sqrt(n)) + 1):
if n%i == 0:
d = int(n/i)
if d <= 10000000:
return d
else:
tmp.append(i)
if tmp:
return tmp[-1]
return 1
def solution(begin, end):
answer = [get_div(i) for i in range(begin, end+1)]
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.10ms, 10.1MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.13ms, 10.2MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.13ms, 10.2MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.07ms, 10.2MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.06ms, 10.1MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.17ms, 10.1MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.10ms, 10.2MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.12ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.18ms, 10.2MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.23ms, 10.1MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.05ms, 10.2MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.05ms, 10.2MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.51ms, 9.96MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.25ms, 10MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.03ms, 10.1MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (511.13ms, 10.6MB)
ํ
์คํธ 2 ใ ํต๊ณผ (792.36ms, 10.5MB)
ํ
์คํธ 3 ใ ํต๊ณผ (1159.49ms, 10.6MB)
ํ
์คํธ 4 ใ ํต๊ณผ (1684.38ms, 10.6MB)
ํ
์คํธ 5 ใ ํต๊ณผ (1706.12ms, 10.5MB)
ํ
์คํธ 6 ใ ํต๊ณผ (1336.56ms, 10.6MB)
- ๋ด๊ฐ ์ง ์ฝ๋์์ ์ฝ์ ๊ตฌํ๋ ๋ถ๋ถ๋ง ์์๊ฑฐ ์ฐธ๊ณ ํด์ ๊ณ ์ณค๋ค.
def get_larger_but_smaller_than_10M(n):
divisors = []
for i in range(2, int(n**0.5)+1):
if n % i == 0:
d = int(n/i)
if d <= 10000000:
return d
else:
divisors.append(i)
if divisors:
return divisors[-1]
return 1
def solution(begin, end):
length = end - begin + 1
array = [0] * length
for i in range(begin, end+1):
if array[i-begin] == 0:
array[i-begin] = get_larger_but_smaller_than_10M(i)
for j in range(i*2, end+1, i):
array[j-begin] = i
if begin == 1:
array[0] = 0
return array
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (0.14ms, 10.2MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.16ms, 10.2MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.16ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.09ms, 10MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.06ms, 10.1MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.22ms, 10.2MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.10ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.08ms, 10.2MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.40ms, 10.3MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.29ms, 10.2MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.07ms, 10.2MB)
ํ
์คํธ 12 ใ ํต๊ณผ (0.12ms, 10.3MB)
ํ
์คํธ 13 ใ ํต๊ณผ (0.26ms, 9.98MB)
ํ
์คํธ 14 ใ ํต๊ณผ (0.33ms, 10.3MB)
ํ
์คํธ 15 ใ ํต๊ณผ (0.01ms, 10.2MB)
ํจ์จ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (513.00ms, 10.7MB)
ํ
์คํธ 2 ใ ํต๊ณผ (872.49ms, 10.8MB)
ํ
์คํธ 3 ใ ํต๊ณผ (1235.25ms, 10.6MB)
ํ
์คํธ 4 ใ ํต๊ณผ (1627.39ms, 10.6MB)
ํ
์คํธ 5 ใ ํต๊ณผ (1867.44ms, 10.6MB)
ํ
์คํธ 6 ใ ํต๊ณผ (1402.81ms, 10.7MB)
'๊ฒ์ ํ๋ก๊ทธ๋๋ฐ > Python ํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ๋ชจ์์ฌ์ (0) | 2023.02.18 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค ๋ฐฐ๋ฌ (0) | 2023.02.18 |
ํ๋ก๊ทธ๋๋จธ์ค ๋ ๋ฐ๋จน๊ธฐ (0) | 2023.02.17 |
ํผ๋ณด๋์น ์์ด์ ์ผ๋ฐํญ (0) | 2023.02.17 |
ํ๋ก๊ทธ๋๋จธ์ค 3 x n ํ์ผ๋ง ์ญ๋๊ธ ์ด๋ ต๋ผใ ใ (0) | 2023.02.17 |