
์ด ํฌ์คํ ์ ์ฟ ํก ํํธ๋์ค ํ๋์ ์ผํ์ผ๋ก, ์ด์ ๋ฐ๋ฅธ ์ผ์ ์ก์ ์์๋ฃ๋ฅผ ์ ๊ณต๋ฐ์ต๋๋ค.
# 11 15 ์ ์ ๋ ฌํ๊ธฐ1 (๋ฐฑ์ค 2750)
์์ ์ต๋ ๊ฐ์, ์ฆ ๋ฐ์ดํฐ N์ ์ต๋ ๊ฐ์๊ฐ 1,000์ด๋ฏ๋ก ์๊ฐ๋ณต์ก๋๊ฐ O(n^2) ์ธ ์๊ณ ๋ฆฌ์ฆ๋ ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
๋ฒ๋ธ ์ ๋ ฌ์ ์ด์ฉํ์ฌ ์ ๋ ฌ
0๋ฒ์งธ ๋ฃจํ์์
0๊ณผ 1 ๋น๊ตํ์ฌ swap, 1๊ณผ 2 ๋น๊ตํ์ฌ swap ... // ์ค๋ฆ์ฐจ์์ธ ๊ฒฝ์ฐ ์์ด ๋ ํฌ๋ฉด swap
์ ๋ ฌ๋์ง ์์ ๋ฒ์ -1
for 0 N-1 // ๋ฃจํ์ ๊ฐ์, ๋ง์ง๋ง์ ๋ฐ์ดํฐ 2๊ฐ๊ฐ ์ ๋ ฌ๋๋ฏ๋ก N์ด ์๋๋ผ N-1๋ฒ ๋ฃจํ
for 0 N-1-i // ์ ๋ ฌ๋์ง ์์ ๋ฒ์, -i๋ ๋ฃจํ์ ํ์๊ฐ ์งํ๋ ์๋ก ์ ๋ ฌ๋์ง ์์ ๋ฒ์๊ฐ 1๊ฐ์ฉ ์ค์ด๋๋ฏ๋ก
# 12 17 ๋ด๋ฆผ์ฐจ์์ผ๋ก ์๋ฆฟ์ ์ ๋ ฌํ๊ธฐ (๋ฐฑ์ค 1427)
์์ ๊ฐ ์๋ฆฟ์๊ฐ ๋ฐ์ดํฐ์ด๋ฏ๋ก N์ ์ต๋ํฌ๊ธฐ๋ 10์ด๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์๊ฐ๋ณต์ก๋๊ฐ O(n^2) ์ธ ์๊ณ ๋ฆฌ์ฆ๋ ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
์ ํ ์ ๋ ฌ์ ์ด์ฉํ์ฌ ์ ๋ ฌ
์ ๋ ฌ๋์ง ์์ ๋ฒ์์์ ์ต๋๊ฐ ์ฐพ๊ธฐ // ๋ด๋ฆผ์ฐจ์์ด๋ฏ๋ก
๋งจ ์ ๊ฐ๊ณผ swap
String์ผ๋ก ๋ฐ๋๋ค.
subString(์ด์, ๋ฏธ๋ง) ๋ฉ์๋ ํธ์ถํ์ฌ ๊ฐ ์๋ฆฟ์ ๋ณ๋ก ๋ฌธ์์ด์ ๋๋์ด, ์ ์๋ก ๋ณํํ ๋ค ๋ฐฐ์ด๋ก ์ ์ฅ
for 0 str.length() // ๋ฃจํ์ ๊ฐ์, 1๊ฐ ๋ฐ์ดํฐ ์ ๋ ฌ
for i+1 str.length() // ์ ๋ ฌ๋์ง ์์ ๋ฒ์, ๋ฃจํ์ ํ์๊ฐ ์งํ๋ ์๋ก ์ ๋ ฌ๋์ง ์๋ ๋ฒ์๊ฐ ์์์๋ถํฐ 1๊ฐ์ฉ ์ค์ด๋๋ฏ๋ก