ํ๋ก๊ทธ๋๋ฐ ์ธ์ด/C++ ์์ฉ
์ฑ๋ฅ ์ต์ ํ๋ฅผ ์ํ ๊ฟํ!
์์๋๐
2022. 12. 30. 21:54
โ ์ต์ ํ๋ฅผ ์ํ Tip
- ํจ์ ์ธ์ ์ค์ด๊ธฐ
- ํจ์ ์ธ์๊ฐ ๋ง์ผ๋ฉด ํจ์ ํธ์ถ ์ค๋ฒํค๋๊ฐ ์ฆ๊ฐํ๋ค. ๋ฐ๋ผ์ ๊ตฌ์กฐ์ฒด๋ ํด๋์ค๋ก ๋ฌถ์ด์ ๊ทธ๊ฒ์ ์ฐธ์กฐ๋ก ์ ๋ฌํ๋ฉด 30% ์๋๋ฅผ ์ฆ๊ฐ ์ํจ๋ค.
- const ์ ์ธ
- ์ปดํ์ผ๋ฌ๋ const ์์ ๊ฐ์ฒด๋ฅผ ์ผ๋ฐ์ ์ธ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์๋ ๋จธ์ ๋ ์ง์คํฐ์ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ด ๋์ฑ ๋น ๋ฅด๋ค.
- ์กฐ๊ฑด๋ฌธ ๋ด ์ฐ์ฐ ์ค์ด๊ธฐ
- ์กฐ๊ฑด๋ฌธ ์์ ์ฌ๋ฌ๊ฐ์ ์กฐ๊ฑด ๋ณ์๊ฐ ์๋ค๋ฉด ๋ถํ์ํ ์ฐ์ฐ์ ๋ค๋ก ๋ณด๋ด์.
- ๋ง์ฝ if ( getValue() > 3000 || isExist ) ๊ฐ ์๋ค๋ฉด if ( isExist || getValue > 3000)๋ก ๋ฐ๊พธ์. isExist๊ฐ true๋ผ๋ฉด ๋ค ์ฐ์ฐ์ ์๋ตํด์ ์ฑ๋ฅ์ ๋์์ ์ค๋ค.
- ์์ฃผ ์ฌ์ฉํ๋ ์ผ์ด์ค๋ฅผ Switch ์์ชฝ์ผ๋ก ๋ฐฐ์น
- switch ์ฝ๋๋ ์์์ ๋ถํฐ ์ฐจ๋ก๋ก ์ฒดํฌํด ๋๊ฐ๊ธฐ ๋๋ฌธ์ ์์ฃผ ์ฌ์ฉํ๋ ์ผ์ด์ค๊ฐ ์์ ์๋ค๋ฉด ๋ฐ์๊น์ง ๊ฐ์ง ์์๋ ๋๋ค.
- 4๋ฐ์ดํธ ๋ณด๋ค ํฐ ํ๋ผ๋ฏธํฐ๋ ๋ฆฌํด๊ฐ์ ์ฐธ์กฐ๋ฅผ ํ์ฉ
- ์คํ์์ ์ผ์ด๋๋ ์์ ์ ์ค์ด๊ณ ๋ถํ์ํ ๋ณต์ฌ๋ฅผ ์ค์ด๊ธฐ ๋๋ฌธ์ด๋ค.
- ์ด๋์
๋ผ์ด์ ๋ฅผ ์ฌ์ฉํ์.
- ๊ธฐ๋ณธ ์์ฑ์์ ํธ์ถ์ด๋ผ๋ ์ค๋ฒํค๋๋ฅผ ํผํ ์ ์์ผ๋ฏ๋ก ์ฑ๋ฅ์ ๋์์ด ๋๋ค.
- ๊ฐ์ํจ์์ ํธ์ถ์ ๋จ๋ฐํ์ง ๋ง์.
- ์ผ๋ฐ ํจ์๋ณด๋ค ๊ฐ์ ํจ์ ํธ์ถ์ ๋๋ฆฌ๋ค. ํ์ํ ๊ฒฝ์ฐ์๋ง virtual ์์ ํจ์๋ฅผ ์ฌ์ฉํ์.
- ์์ฃผ ๊ณ์ฐ๋๋ ๊ฒ๋ค์ ๋ํด์๋ Memoization์ด๋ Tabulation์ ํ์ฉํ์.
- ์บ์ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ ๋ถํ์ํ ์ฐ์ฐ์ ์ค์ธ๋ค.(์ ์ฅ๊ณต๊ฐ์ ๋ ๋ง์ด ์จ์ ์๋๋ฅผ ์๋ผ์)
- ๋งํฌ๋๋ฆฌ์คํธ๋ณด๋จ ๋ฐฐ์ด์ด๋ ๋ฒกํฐ๋ฅผ ์ฌ์ฉํ์.
- ํฌ์ธํฐ๋ก ์ฐ๊ฒฐ๋ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๋ ๊ฒ๋ณด๋ค ์ฐ์๋ ๊ณต๊ฐ์ผ๋ก ๊ตฌ์ฑ๋ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์.