728x90
SW์ค์ฌ๋ํ ์ฌ์ ๋จ์์ CodeTree์ ํจ๊ป ์ค์ํ ์ฝ๋ฉํ ์คํธ ๋๋น ์บ ํ์ ์ฐธ์ฌํ์ฌ ๊ณต๋ถํ ๋ด์ฉ์ ์ ๋ฆฌํ์์ต๋๋ค.
๋ฐ๋ณต๋ฌธ ์๊ฐ๋ณต์ก๋ ๋ฌธ์ ์ค ์ด๋ ค์ ๋ ๋ฌธ์ ์ ๋๋ค.
(1)
function solution(n, m)
set sum = 0
set visited = [n][m]
for i = 1 ... i <= n
for j = 1 ... j <= m
if visited[i][j] == 0
for k = j ... k <= m
visited[i][k] = 1
for i ๋ฌธ์์๋ O(N),
for j ๋ฌธ์์ O(M) ์ด๊ณ ,
for k๋ฌธ์ ์กฐ๊ฑด๋ฌธ์ด ๋ง์กฑ๋ ๋๋ง ์คํ๋๋๋ฐ... ์ด๊ฒ ๋ณต์กํ์ต๋๋ค.
์ฝ๋๋ฅผ ๋ถ์ํด๋ณด๋ฉด if๋ฌธ์ j ๋ฐ๋ณต๋ฌธ์ด ๋ชจ๋ ๋๋ ๋์ ๋จ 1๋ฒ๋ง ์กฐ๊ฑด์ ๋ง์กฑํ๊ธฐ ๋๋ฌธ์, for k ๋ฌธ์ ์๊ฐ๋ณต์ก๋๋ ๊ฒฐ๊ตญ O(1)์ด๋ผ๊ณ ๋ด ๋๋ค.
-> O(NM)
(2)
function solution(n, m)
set sum = 0
for i = 1 ... i <= n
for j = 1 ... j <= m
sum += i * j
for i = 1 ... i <= n
sum -= i * i
์ฒซ๋ฒ์งธ for i ๋ฌธ์ O(N), for j ๋ฌธ์ O(M)
๋๋ฒ์จฐ for i ๋ฌธ์ O(N)์ด๋ฏ๋ก
์ด O(NM + N) ?
-> ์๊ฐ๋ณต์ก๋๋ ์ต๊ณ ์ฐจ์๋ง ์ด๋ฆฌ๋ฉด ๋๋ฏ๋ก, O( N*(M+1) ) => O(NM)
์ถ์ฒ ์ฝ๋ํธ๋ฆฌ
728x90
'๐ ์๊ณ ๋ฆฌ์ฆ > Code Tree' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ฝ๋ํธ๋ฆฌ] HashMap ์ฐ์ต๋ฌธ์ (0) | 2023.02.09 |
---|---|
[์ฝ๋ํธ๋ฆฌ] Hash Map (0) | 2023.02.07 |
[์ฝ๋ํธ๋ฆฌ] ๊ณต๊ฐ๋ณต์ก๋ (0) | 2023.02.06 |
[์ฝ๋ํธ๋ฆฌ] ๋ฐ๋ณต๋ฌธ์ ์๊ฐ๋ณต์ก๋(1) (0) | 2023.02.06 |
[์ฝ๋ํธ๋ฆฌ] ์๊ฐ๋ณต์ก๋์ ์ ์ (0) | 2023.02.06 |