๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“– Problem Solution/Programmers

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค N์œผ๋กœ ํ‘œํ˜„ Swift

by Fomagran ๐Ÿ’ป 2021. 2. 7.
728x90
๋ฐ˜์‘ํ˜•

Source Code

 


Solution

 

ํ•ด๋‹น ๋ฌธ์ œ๋Š” Dynamic Programming ์— ๊ด€ํ•œ ๋ฌธ์ œ๋‹ค.

 

์ฒ˜์Œ์—” ์ฃผ์–ด์ง„ number๋กœ dp๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋‚˜..? ๋ผ๊ณ  ์ž˜๋ชป ์ ‘๊ทผํ•ด์„œ ํ’€๊ธฐ ์–ด๋ ค์› ๋Š”๋ฐ

 

N์˜ ๊ฐฏ์ˆ˜์— ๋”ฐ๋ผ์„œ dp๋ฅผ ๋งŒ๋“œ๋‹ˆ ํ•ด๊ฒฐ๋ฒ•์ด ๋‚˜์™”๋‹ค.

 

๋จผ์ € N์˜ ๊ฐฏ์ˆ˜์— ๋”ฐ๋ผ์„œ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์„œ ๋ฐฐ์—ด์— ๋„ฃ์—ˆ๋‹ค.

 

์šฐ์„  N์ด 1๊ฐœ๋ถ€ํ„ฐ 8๊ฐœ๊นŒ์ง€์˜ ๊ฐ ํ•ด๊ฒฐ๋ฒ•์ด ํ•„์š”ํ•œ๋ฐ (๊ฐ€๋…์„ฑ์„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ 0๋ฒˆ์งธ๋„ ๊ฐ’์„ ๋„ฃ์–ด์คฌ๋‹ค.)

 

๋จผ์ € N์ด i๊ฐœ ์ผ๋•Œ ๋ฏธ๋ฆฌ ๊ทธ๋งŒํผ์˜ N์„ ๋งŒ๋“ค์–ด์ค˜์„œ ๋„ฃ์–ด์ค€๋‹ค.

 

(๋ง์ด ์–ด๋ ค์šด๋ฐ ๋งŒ์•ฝ N์ด 5์ด๊ณ  i๊ฐ€ 2๊ฐœ ๋ผ๋ฉด 55๋ฅผ ๋„ฃ์–ด์ฃผ๊ณ  i๊ฐ€ 3๊ฐœ๋ผ๋ฉด 555๋ฅผ ๋„ฃ์–ด์ค€๋‹จ ๋ง์ด๋‹ค)

 

N์ด 1๊ฐœ์ผ๋• i๊ฐœ 1๊ฐœ ์ด๋ฏ€๋กœ N์„ ๋„ฃ์–ด์ฃผ๊ณ  ๋‹ค๋ฅธ ๊ฐ’์€ ์—†์œผ๋ฏ€๋กœ ๋๋‚ธ๋‹ค.

 

N์ด 2๊ฐœ์ผ๋• NN์„ ๋„ฃ์–ด์ฃผ๊ณ  N์ด 1๊ฐœ์ผ๋•Œ์˜ ๊ฐ’์— ๋˜ N์ด 1๊ฐœ์ผ๋•Œ์˜ ๊ฐ’์„ ๊ฐ ์‚ฌ์น™์—ฐ์‚ฐ๋ณ„๋กœ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค.

 

N์ด 3๊ฐœ์ผ๋• NNN์„ ๋„ฃ๊ณ  N์ด 1๊ฐœ์ผ๋•Œ์˜ ๊ฐ’๊ณผ N์ด 2๊ฐœ์ผ๋•Œ์˜ ๊ฐ’์„ ๊ฐ ์‚ฌ์น™์—ฐ์‚ฐ๋ณ„๋กœ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค.

 

N์ด 4๊ฐœ์ผ๋• NNNN์„ ๋„ฃ๊ณ  N์ด 1๊ฐœ์ผ๋•Œ์™€ 3๊ฐœ์ผ๋•Œ์™€ N์ด 2๊ฐœ์ผ๋•Œ์™€ 2๊ฐœ์ผ๋•Œ๋ฅผ ๊ฐ ์‚ฌ์น™์—ฐ์‚ฐ๋ณ„๋กœ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค.

 

..... ์ด๋ ‡๊ฒŒ 8๊ฐœ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋ฉด ๋˜๋Š”๋ฐ ์ด๊ฒƒ์„ ์‰ฝ๊ฒŒ ๋ฐฐ์—ด๋กœ ํ‘œํ˜„ํ•˜๋ฉด

 

[[[1,1]],[[1,2]],[[1,3],[2,2]],[[1,4],[2,3]],[[1,5],[2,4],[3,3]],[[1,6],[2,5],[3,4]],[[1,7],[2,6],[3,5],[4,4]]]

 

๊ฐ™์ด ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค.

 

์ด๋ ‡๊ฒŒ ๋ฐ˜๋ณตํ•˜๋‹ค๊ฐ€ number์— ํ•ด๋‹น๋˜๋Š” ์ˆซ์ž๊ฐ€ ๋‚˜์˜ค๋ฉด N์ด ๋ช‡๊ฐœ์ธ์ง€ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋œ๋‹ค.

 

์ฃผ์˜ํ• ์ ์€ a-b ์™€ b-a, ๊ทธ๋ฆฌ๊ณ  a/b ์™€ b/a๋Š” ๊ฐ’์ด ๋‹ค๋ฅด๋ฏ€๋กœ ๋‘ ๊ฐ’ ๋ชจ๋‘ ๋„ฃ์–ด์ค˜์•ผ ํ•œ๋‹ค๋Š” ์ ์ด๋‹ค.


Problem

 

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - N์œผ๋กœ ํ‘œํ˜„

 

programmers.co.kr


๋„ˆ๋ฌด ํ’€์ด๋„ ์–ด๋ ต๊ณ  ๋ณ„๋กœ ํšจ์œจ์ ์œผ๋กœ ํ‘ผ๊ฑฐ๊ฐ™์ง„ ์•Š๋‹ค.

 

์•„๋ž˜๋Š” ๊ฐ ํ…Œ์ŠคํŠธ๋ณ„ ๊ฑธ๋ฆฐ์‹œ๊ฐ„์ธ๋ฐ 4๋ฒˆ๊ณผ 5๋ฒˆ 8๋ฒˆ๊ฐ™์€ ๊ฒฝ์šฐ ์ง€๋‚˜์น˜๊ฒŒ ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฐ๋‹ค...

 

ํ˜น์‹œ ๋” ์ข‹์€ ํ’€์ด ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

 

๋˜ ์ข‹์€ ํ’€์ด๊ฐ€ ์ƒ๊ฐ๋‚˜๋ฉด ์ˆ˜์ •ํ•ด์„œ ์˜ฌ๋ฆฌ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

 

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€