CSED101 – Solved

$ 20.99
Category:

Description

Programming Assignment #2
(60 points)

์ด์ง€์™„ (jiwan95@postech.ac.kr)

๏ฎ ์ œ์ถœ๋ฌผ
๏‚Ÿ C Code files (*.c)
๏ƒ˜ ํ™•์žฅ์ž ํฌํ•จ ์†Œ์Šค ํŒŒ์ผ๋ช…์€ ํ•ด๋‹น ๋ฌธ์ œ ๋ฒˆํ˜ธ๋ฅผ ๋”ฐ๋ผ assn2_1.c, assn2_2.c๋กœ ํ•  ๊ฒƒ
– ํŒŒ์ผ๋ช… ์–‘์‹์„ ๋ฏธ์ค€์ˆ˜ํ•˜๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ํ†ต์งธ๋กœ ์ œ์ถœํ•  ์‹œ ๊ฐ์ 
๏ƒ˜ ํ”„๋กœ๊ทธ๋žจ์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋„๋ก ๋ฐ˜๋“œ์‹œ ์ฃผ์„์„ ๋ถ™์ผ ๊ฒƒ
๏ƒ˜ ํ•จ์ˆ˜ ๋˜๋Š” ๋ณ€์ˆ˜ ์ด๋ฆ„ ์„ ํƒ ์‹œ, ์–ด๋– ํ•œ ์˜๋„๋กœ ์‚ฌ์šฉ๋˜๋Š”์ง€ ๋ช…๋ฃŒํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋„ ๋ก ํ•  ๊ฒƒ
๏‚Ÿ ๋ณด๊ณ ์„œ ํŒŒ์ผ (assn2.docx or assn2.hwp)
๏ƒ˜ AssnReadMe.pdf ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ์ž‘์„ฑํ•  ๊ฒƒ
๏ƒ˜ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ํ™”๋ฉด์„ ์บก์ฒ˜ํ•˜์—ฌ ๋ณด๊ณ ์„œ์— ํฌํ•จ์‹œํ‚ค๊ณ , ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•  ๊ฒƒ
๏ƒ˜ ์†Œ์Šค์ฝ”๋“œ์™€ ๋ณด๊ณ ์„œ ํŒŒ์ผ์„ LMS์œผ๋กœ ์ œ์ถœ

๏ฎ ์ฃผ์˜์‚ฌํ•ญ
๏‚Ÿ ๊ฐ ๋ฌธ์ œ์— ํ•ด๋‹นํ•˜๋Š” ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ฐ˜๋“œ์‹œ ์ง€ํ‚ฌ ๊ฒƒ
๏‚Ÿ ์ปดํŒŒ์ผ ๋˜๋Š” ์‹คํ–‰์ด ์•ˆ๋˜๋ฉด ๋ฌด์กฐ๊ฑด 0์  ์ฒ˜๋ฆฌ
๏‚Ÿ ํ•˜๋ฃจ late์‹œ 20%๊ฐ€ ๊ฐ์ ๋˜๋ฉฐ, 3์ผ ์ด์ƒ ์ง€๋‚˜๋ฉด ๋ฐ›์ง€ ์•Š์Œ (0์  ์ฒ˜๋ฆฌ)
๏‚Ÿ ๋ถ€์ •ํ–‰์œ„์— ๊ด€ํ•œ ๊ทœ์ •์€ POSTECH ์ „์ž์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€ ํ•™๋ถ€์œ„์›ํšŒ์˜ โ€˜POSTECH ์ „์ž์ปดํ“จ ํ„ฐ๊ณตํ•™๋ถ€ ๋ถ€์ •ํ–‰์œ„ ์ •์˜โ€™๋ฅผ ๋”ฐ๋ฅธ๋‹ค. (LMS์˜ ๊ณผ๋ชฉ ๊ณต์ง€์‚ฌํ•ญ์˜ ์ œ๋ชฉ [document about cheating]์˜ ์ฒจ๋ถ€ํŒŒ์ผ์ธ disciplinary.pdf๋ฅผ ์ฐธ์กฐํ•  ๊ฒƒ.)
๏‚Ÿ ์ถ”๊ฐ€์ ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„์— ๋Œ€ํ•ด์„œ๋Š” ์ถ”๊ฐ€ ์ ์ˆ˜ ์—†์Œ

๏ฎ Problem 1: ํ‘๋ฐฑ ๊ณต ๊ฒŒ์ž„ (40์ )

(๋ชฉ์ )
์ด๋ฒˆ ๊ณผ์ œ๋Š” ๋žœ๋ค ํ•จ์ˆ˜ ์‚ฌ์šฉ๊ณผ ์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉ์„ ์ตํžˆ๊ณ ์ž ํ•œ๋‹ค. ๋˜ํ•œ ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋“ค์„ ์ž‘์„ฑํ•˜์—ฌ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ ๋†’์ด๋Š” ์—ฐ์Šต์„ ํ•œ๋‹ค.

(์ฃผ์˜์‚ฌํ•ญ)
๏ฌ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ตํžˆ๋Š” ๋ฌธ์ œ์ด๋ฏ€๋กœ main ํ•จ์ˆ˜์— ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ ๊ฒฝ์šฐ 0์  ์ฒ˜๋ฆฌํ•จ.
๏ฌ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋“ค์€ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐœ์ˆ˜ ๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ ์ž๋ฃŒํ˜•, ํ•จ์ˆ˜ ์ด๋ฆ„, ๋ฆฌํ„ด ์ž๋ฃŒํ˜• ๋“ฑ ์ž์œ ๋กญ๊ฒŒ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•จ. ๊ทธ๋Ÿฌ๋‚˜ ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ฌด์—‡์„ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ•ด์„œ ๊ตฌํ˜„ํ–ˆ๋Š”์ง€ ๋ณด๊ณ ์„œ์— ํฌํ•จํ•˜๋„๋ก ํ•œ๋‹ค. ์ด ์ด์™ธ์— ํ•„์š”ํ•˜๋‹ค๋ฉด ๋‹ค๋ฅธ ํ•จ์ˆ˜๋“ค๋กœ ๋” ๋‚˜๋ˆ„๊ฑฐ๋‚˜ ์ถ”๊ฐ€ ๊ฐ€๋Šฅํ•จ.
๏ฌ ์ „์—ญ ๋ณ€์ˆ˜, ๋ฐฐ์—ด ๋ฐ goto ๋ฌธ์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์œผ๋ฉฐ, ์‚ฌ์šฉ ์‹œ 0์  ์ฒ˜๋ฆฌํ•จ.
๏ฌ ๋ฌธ์ œ์˜ ์ถœ๋ ฅ ํ˜•์‹์€ ์‹คํ–‰ ์˜ˆ์‹œ์™€ ๋™์ผํ•˜๊ฒŒ ์ž‘์„ฑ ๋ฐ”๋žŒ.

0. ๊ฒŒ์ž„ ์„ค๋ช…
์ด ๊ฒŒ์ž„์€ ๋‘ ๋ช…์˜ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๊ฐ์ž์—๊ฒŒ ์ฃผ์–ด์ง„ 15๊ฐœ์˜ ํฐ์ƒ‰ ๊ณต์„ ๊ฒ€์€์ƒ‰ ๊ณต์œผ๋กœ ๋ฐ”๊พธ์–ด ๊ฐ€๋Š” ๊ฒŒ์ž„์ด๋‹ค. ์ข…๋ฃŒ ์‹œ์  ์‹œ ๊ฒ€์€ ๊ณต์˜ ์ˆ˜๊ฐ€ ๋” ๋งŽ์€ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์Šน๋ฆฌํ•˜๋ฉฐ, ๊ฒŒ์ž„์ด ์ง„ํ–‰๋˜๋Š” ๋™์•ˆ ํ”Œ๋ ˆ์ด์–ด๋“ค์€ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉฐ ์ž์‹ ์˜ ํ„ด์„ ์ง„ํ–‰ํ•œ๋‹ค. ํ•œ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ข…๋ฃŒ๋ฅผ ์„ ์–ธํ•˜๋ฉด ๋‹ค๋ฅธ ํ”Œ๋ ˆ์ด์–ด๋Š” ์ž๋™์œผ๋กœ ์ž์‹ ์˜ ํ„ด ํ•œ ๋ฒˆ์„ ์ง„ํ–‰ํ•˜๊ฒŒ ๋˜๋ฉฐ, ์ตœ๋Œ€ ์„ธ ๋ฒˆ๊นŒ์ง€ ์ถ”๊ฐ€๋กœ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งค ํ„ด๋งˆ๋‹ค ํ”Œ๋ ˆ์ด์–ด๋Š” 1๋ถ€ํ„ฐ 5๊นŒ์ง€์˜ ๋žœ๋คํ•œ ๊ฐ’์œผ๋กœ ํฐ์ƒ‰ ๊ณต์„ ๊ฒ€์€์ƒ‰ ๊ณต์œผ๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ ๊ฒ€์€์ƒ‰ ๊ณต์ด 15๊ฐœ๋ฅผ ์ดˆ๊ณผํ•  ๊ฒฝ์šฐ, ์ดˆ๊ณผํ•œ ์ˆ˜๋งŒํผ์˜ ๊ฒ€์€์ƒ‰ ๊ณต๋งŒ ๊ฐ–๋Š”๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํ•œ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ 13๊ฐœ์˜ ๊ฒ€์€์ƒ‰ ๊ณต์„ ๊ฐ–๊ณ  ์žˆ์œผ๋ฉฐ, ์ด ์ƒํƒœ์—์„œ 1๊ณผ 2์˜ ์ˆ˜๋ฅผ ๊ธฐ๋Œ€ํ•˜๋ฉฐ ํ„ด์„ ์ง„ํ–‰ํ•œ๋‹ค. ์ด๋•Œ 2 ์ดˆ๊ณผ์˜ ์ˆ˜์ธ 4๊ฐ€ ๋‚˜์˜จ๋‹ค๋ฉด ํ•ด๋‹น ํ”Œ๋ ˆ์ด์–ด๋Š” 2๊ฐœ์˜ ๊ฒ€์€์ƒ‰ ๊ณต๊ณผ 13๊ฐœ์˜ ํฐ์ƒ‰ ๊ณต์„ ๊ฐ–๊ฒŒ ๋œ๋‹ค.

1. ํ”„๋กœ๊ทธ๋žจ ์ดˆ๊ธฐ ํ™”๋ฉด
ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ฉด, ์•„๋ž˜ ์‹คํ–‰ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ๊ฐ ํ”Œ๋ ˆ์ด์–ด์—๊ฒŒ ์ฃผ์–ด์ง„ 15๊ฐœ์˜ ํฐ์ƒ‰ ๊ณต์ด ์ถœ๋ ฅ๋˜๋ฉฐ ํ”Œ๋ ˆ์ด์–ด์˜ ์ž…๋ ฅ์„ ๊ธฐ๋‹ค๋ฆฐ๋‹ค.

P1 โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)]

2. ํ”Œ๋ ˆ์ด์–ด ์ž…๋ ฅ
ํ”Œ๋ ˆ์ด์–ด๋Š” ๋งค ํ„ด๋งˆ๋‹ค ์ž…๋ ฅ ๊ฐ’์„ ์ œ๊ณตํ•˜๋ฉฐ, ์œ ํšจํ•œ ์ž…๋ ฅ ๊ฐ’์€ 3, -1, -2 ๊ฐ€ ์žˆ๋‹ค. ์œ ํšจํ•œ ์ž…๋ ฅ ๊ฐ’์ด ๋“ค์–ด์˜ฌ ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ ๊ฒŒ์ž„์ด ์ง„ํ–‰๋œ๋‹ค.

A. ๊ฒŒ์ž„ ๊ณ„์† ์ง„ํ–‰ (์ž…๋ ฅ ๊ฐ’ 3) ํ”Œ๋ ˆ์ด์–ด 1๊ณผ ํ”Œ๋ ˆ์ด์–ด 2๊ฐ€ ๋‘˜๋‹ค ๊ฒŒ์ž„ ์ง„ํ–‰์„ ์›ํ•˜๋ฉด ์ž…๋ ฅ ๊ฐ’์œผ๋กœ 3์„ ์ž…๋ ฅํ•œ๋‹ค. ์ด ๊ฒฝ์šฐ ํ”Œ๋ ˆ์ด์–ด 1๊ณผ 2๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ๊ฒ€์€์ƒ‰ ๊ณต์„ ๋ฐ›๊ฒŒ ๋œ๋‹ค. ๊ฒ€์€์ƒ‰ ๊ณต์˜ ์ˆ˜๋Š” ์ปดํ“จํ„ฐ๊ฐ€ 1๊ฐœ๋ถ€ํ„ฐ 5๊ฐœ ๊นŒ์ง€๋ฅผ ๋žœ๋คํ•˜๊ฒŒ ์„ ํƒํ•˜์—ฌ ์ œ๊ณตํ•œ๋‹ค.
๋‹ค์Œ์€ ์ž…๋ ฅ ๊ฐ’ 3์˜ ์˜ˆ์‹œ์ด๋‹ค (์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฐ’ ๋นจ๊ฐ„์ƒ‰ ๋ฐ‘์ค„ ํ‘œ์‹œ). ํ”Œ๋ ˆ์ด์–ด 1์ด ๋จผ์ € 4๊ฐœ์˜ ํฐ์ƒ‰ ๊ณต์„ ๊ฒ€์€์ƒ‰ ๊ณต์œผ๋กœ ๋ฐ”๊พธ์—ˆ์œผ๋ฉฐ, ์ดํ›„ ํ”Œ๋ ˆ์ด์–ด 2๊ฐ€ ํฐ์ƒ‰ ๊ณต 2๊ฐœ๋ฅผ ๊ฒ€์€์ƒ‰์œผ๋กœ ๋ฐ”๊พธ์—ˆ๋‹ค. ์ด๋•Œ 2์™€ 4๋Š” ์ปดํ“จํ„ฐ๋กœ๋ถ€ํ„ฐ ๋žœ๋คํ•˜๊ฒŒ ๋ฐ›์€ ๊ฐ’์ด๋‹ค.

P1 โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 3

AFTER P1
P1 โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹ ํ”Œ๋ ˆ์ด์–ด 1์˜ ๊ฒŒ์ž„ ์ง„ํ–‰ P2 โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

AFTER P2
P1 โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹ ํ”Œ๋ ˆ์ด์–ด 2์˜ ๊ฒŒ์ž„ ์ง„ํ–‰
P2 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)]
์ž…๋ ฅ ๊ฐ’ 3 ์˜ˆ์‹œ: ๊ฒŒ์ž„ ์ง„ํ–‰

๊ฒŒ์ž„ ์ง„ํ–‰ ์ค‘ ๊ฒ€์€์ƒ‰ ๊ณต์ด 15๊ฐœ๋ฅผ ์ดˆ๊ณผํ•  ๊ฒฝ์šฐ, ์ดˆ๊ณผํ•œ ์ˆ˜๋งŒํผ์˜ ๊ฒ€์€์ƒ‰ ๊ณต๋งŒ ๊ฐ–๋Š”๋‹ค. ๋‹ค์Œ ์˜ˆ์‹œ์—์„œ ๋‘ ํ”Œ๋ ˆ์ด์–ด ๋ชจ๋‘ ๊ฒ€์€์ƒ‰ ๊ณต์ด 12๊ฐœ์ธ ์ƒํƒœ์—์„œ 3์„ ์ž…๋ ฅํ•˜์—ฌ ๊ฒŒ์ž„์„ ์ง„ํ–‰ํ•œ๋‹ค. ํ”Œ๋ ˆ์ด์–ด 1์˜ ๊ฒฝ์šฐ ๊ฒ€์€์ƒ‰ ๊ณต 2๊ฐœ๋ฅผ ๋” ๋ฐ›์•„ 14๊ฐœ๊ฐ€ ๋˜์—ˆ์œผ๋‚˜, ํ”Œ๋ ˆ์ด์–ด 2์˜ ๊ฒฝ์šฐ 5๊ฐœ๋ฅผ ๋” ๋ฐ›๊ฒŒ ๋˜์–ด ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜๊ฐ€ 15๊ฐœ๋ฅผ ์ดˆ๊ณผํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ์ด ๊ฒฝ์šฐ, ๊ฒŒ์ž„ ๊ทœ์น™์— ๋”ฐ๋ผ ํ”Œ๋ ˆ์ด์–ด 2๋Š” ์ดˆ๊ณผํ•œ ์ˆ˜๋งŒํผ์˜ ๊ฒ€์€์ƒ‰ ๊ณต 2๊ฐœ๋งŒ ๊ฐ–๊ฒŒ ๋จ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 3

AFTER P1
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)]
15๊ฐœ ์ดˆ๊ณผ ์˜ˆ์‹œ

๋‹ค์Œ์€ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ํ•จ์ˆ˜๋“ค์ด๋‹ค. ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ณด๊ณ ์„œ์— ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ํ•œ๋‹ค (์ฃผ์˜์‚ฌํ•ญ ์ฐธ๊ณ ).

๏ฌ ํ”Œ๋ ˆ์ด์–ด๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ ๊ฐ’์„ ๋ฐ›์•„ ๊ทธ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋กœ, ์ž…๋ ฅ์„ ์š”๊ตฌํ•˜๋Š” ์ถœ๋ ฅ ๋ฌธ๊ตฌ๋ฅผ ํฌํ•จํ•˜์—ฌ ๊ตฌํ˜„ํ•œ๋‹ค. int getResponse()

๏ฌ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋žœ๋คํ•œ ๊ฐ’์˜ ๊ฒ€์€์ƒ‰ ๊ณต์„ ๋ฐ›๋Š”๋ฐ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋žœ๋คํ•œ ๊ฐ’์˜ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ์‹œ์ž‘๊ณผ ๋์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›๋Š”๋‹ค. ์ด ๊ฐ’์€ ๋งค ์‹คํ–‰๋งˆ๋‹ค ๋‹ค๋ฅธ ๊ฐ’์„ ๊ฐ€์ ธ ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค.
int getRandomBalls(int start, int end)

๏ฌ ํ”Œ๋ ˆ์ด์–ด์˜ ๊ฒ€์€์ƒ‰ ๊ณต ๋ณด์œ  ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ํ˜„์žฌ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜์™€ ์ถ”๊ฐ€๋˜๋Š” ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›์•„, 15๊ฐœ๊ฐ€ ๋„˜์ง€ ์•Š๋„๋ก ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
int changeBallStatus(int current, int plus)

๏ฌ ํ”Œ๋ ˆ์ด์–ด์˜ ํ‘๋ฐฑ ๊ณต ๋ณด์œ  ์ƒํƒœ ์ถœ๋ ฅ์„ ์œ„ํ•œ ํ•จ์ˆ˜๋กœ, ๊ฒ€์€์ƒ‰ ๊ณต์˜ ์ˆ˜๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›์•„ ํ™”๋ฉด์— ์ถœ๋ ฅํ•œ๋‹ค. ํฐ์ƒ‰ ๊ณต์€ โ—‹, ๊ฒ€์€์ƒ‰ ๊ณต์€ โ—์„ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค (๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ). void printCurrentBallStatus(int num)

๏ฌ ๋‹ค์Œ ๋‘ ํ•จ์ˆ˜๋“ค์€ ๊ฐ ํ”Œ๋ ˆ์ด์–ด์˜ ๊ฒŒ์ž„์„ ์ง„ํ–‰ํ•œ๋‹ค. ํ”Œ๋ ˆ์ด์–ด 1๊ณผ 2์˜ ๊ฒ€์€์ƒ‰ ๊ณต ๊ฐœ์ˆ˜๋ฅผ ์ „๋‹ฌ๋ฐ›์•„, ๊ฐ ํ•จ์ˆ˜๋งˆ๋‹ค ํ•ด๋‹นํ•˜๋Š” ํ”Œ๋ ˆ์ด์–ด์˜ ๋ณ€๊ฒฝ๋œ ๊ฒ€์€์ƒ‰ ๊ณต์˜ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. (์ž…๋ ฅ ๊ฐ’ 3 ์˜ˆ์‹œ ์ฐธ๊ณ )
int movePlayer1(int player1, int player2) int movePlayer2(int player1, int player2)

B. ๊ฒŒ์ž„ ์ข…๋ฃŒ ์„ ์–ธ (์ž…๋ ฅ ๊ฐ’ -1, -2) ์ž…๋ ฅ ๊ฐ’ -1๊ณผ -2๋Š” ํ•ด๋‹น ํ”Œ๋ ˆ์ด์–ด ๋ฒˆํ˜ธ์˜ ๊ฒŒ์ž„ ์ข…๋ฃŒ ์„ ์–ธ์„ ์˜๋ฏธํ•œ๋‹ค. ๋‘˜ ์ค‘์˜ ํ•œ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๊ฒŒ์ž„ ์ข…๋ฃŒ ์„ ์–ธ์„ ํ•˜๋ฉด, ์ƒ๋Œ€ ํ”Œ๋ ˆ์ด์–ด๋Š” ๊ฒŒ์ž„์„ ์ง€์†ํ• ์ง€ ๋ง์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๋ฉฐ ์ตœ๋Œ€ ์„ธ ๋ฒˆ๊นŒ์ง€ ๋ณธ์ธ์˜ ํ„ด์„ ์ถ”๊ฐ€๋กœ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
๋‹ค์Œ์€ ์ž…๋ ฅ ๊ฐ’ -1์˜ ์˜ˆ์‹œ์ด๋‹ค (์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฐ’ ๋นจ๊ฐ„์ƒ‰ ๋ฐ‘์ค„ ํ‘œ์‹œ). ์ž…๋ ฅ ๊ฐ’ -1์€ ํ”Œ๋ ˆ์ด์–ด 1์˜ ์ข…๋ฃŒ ์„ ์–ธ์„ ์˜๋ฏธํ•˜๋ฉฐ, ํ”Œ๋ ˆ์ด์–ด 2๊ฐ€ ์ž๋™์œผ๋กœ ๋ณธ์ธ์˜ ํ„ด์„ ํ•œ ๋ฒˆ ์ง„ํ–‰ํ•œ๋‹ค. ์ดํ›„ ํ”Œ๋ ˆ์ด์–ด 2๋„ -2๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๊ฒŒ์ž„ ์ข…๋ฃŒ๋ฅผ ์„ ์–ธํ•˜์˜€๋‹ค. ๋‘ ํ”Œ๋ ˆ์ด์–ด ๋ชจ๋‘๊ฐ€ ์ข…๋ฃŒ๋ฅผ ์„ ์–ธํ•˜์˜€์œผ๋ฏ€๋กœ ์ŠนํŒจ ์ถœ๋ ฅ๋ฌธ๊ณผ ํ•จ๊ป˜ ๊ฒŒ์ž„์€ ์ข…๋ฃŒ๋œ๋‹ค.

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -1

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -2

WIN P1, P1 14, P2 4
์ž…๋ ฅ ๊ฐ’ -1 ์˜ˆ์‹œ

๋‹ค์Œ์€ ์ž…๋ ฅ ๊ฐ’ -2์˜ ์˜ˆ์‹œ์ด๋‹ค (์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฐ’ ๋นจ๊ฐ„์ƒ‰ ๋ฐ‘์ค„ ํ‘œ์‹œ). ์ž…๋ ฅ ๊ฐ’ -2๋Š” ํ”Œ๋ ˆ์ด์–ด 2์˜ ์ข…๋ฃŒ ์„ ์–ธ์„ ์˜๋ฏธํ•˜๋ฉฐ, ํ”Œ๋ ˆ์ด์–ด 1์ด ์ž๋™์œผ๋กœ ๋ณธ์ธ์˜ ํ„ด ํ•œ ๋ฒˆ์„ ์ง„ํ–‰ํ•œ๋‹ค. ์ด ์˜ˆ์‹œ๋Š” ์ตœ๋Œ€ ์„ธ ๋ฒˆ๊นŒ์ง€์ธ ๋ณธ์ธ์˜ ์ถ”๊ฐ€ ํ„ด๋“ค์„ ๋ชจ๋‘ ์ง„ํ–‰ํ•œ ๊ฒฝ์šฐ์ด๋ฉฐ, ์ŠนํŒจ ์ถœ๋ ฅ๋ฌธ๊ณผ ๊ฐ™์ด ํ”„๋กœ๊ทธ๋žจ์€ ์ข…๋ฃŒ๋œ๋‹ค.

AFTER P2
P1 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -2

AFTER P1
P1 โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 3

AFTER P1
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 3

AFTER P1
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

WIN P2, P1 12, P2 13
์ž…๋ ฅ ๊ฐ’ -2 ์˜ˆ์‹œ

C. ์œ ํšจํ•˜์ง€ ์•Š์€ ์ž…๋ ฅ
3, -1, -2 ์ด์™ธ์˜ ์ž…๋ ฅ ๊ฐ’๋“ค์€ ์œ ํšจํ•˜์ง€ ์•Š๋‹ค. ์œ ํšจํ•˜์ง€ ์•Š์€ ์ž…๋ ฅ์„ ๋ฐ›์€ ๊ฒฝ์šฐ, ์ž…๋ ฅ ๋ฐ›์€ ๊ฐ’์ด ์œ ํšจํ•˜์ง€ ์•Š๋‹ค๋Š” ๋ฌธ๊ตฌ๊ฐ€ ์ถœ๋ ฅ๋˜๋ฉฐ ํ”„๋กœ๊ทธ๋žจ์€ ์ข…๋ฃŒ๋œ๋‹ค. ์ด์™ธ์— ํ”Œ๋ ˆ์ด์–ด ์ข…๋ฃŒ ์„ ์–ธ์ด ์ค‘์ฒฉ๋  ๊ฒฝ์šฐ ์ž…๋ ฅ ๊ฐ’์ด ์œ ํšจํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ด ๋ฌธ์ œ์—์„œ๋Š” ํ”Œ๋ ˆ์ด์–ด ์ž…๋ ฅ์œผ๋กœ ์ •์ˆ˜ ์™ธ ์ž…๋ ฅ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•  ํ•„์š”๋Š” ์—†๋‹ค.
๋‹ค์Œ ์˜ˆ์‹œ๋“ค์€ ๊ฐ๊ฐ ์œ ํšจํ•˜์ง€ ์•Š์€ ์ž…๋ ฅ์ด ๋“ค์–ด์˜จ ๊ฒฝ์šฐ์™€ ์ค‘๋ณต๋œ ์ข…๋ฃŒ ์„ ์–ธ์˜ ๊ฒฝ์šฐ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค (์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฐ’ ๋นจ๊ฐ„์ƒ‰ ๋ฐ‘์ค„ ํ‘œ์‹œ).

AFTER P2
P1 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 0 0 IS NOT VALID RESPONSE

WIN P2, P1 2, P2 5
3, -1, -2 ์ด์™ธ์˜ ์ž…๋ ฅ ์˜ˆ์‹œ

AFTER P2
P1 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -1

AFTER P2
P1 โ—โ—โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -1 -1 IS NOT VALID RESPONSE

WIN P2, P1 2, P2 13
์ค‘๋ณต๋œ ์ข…๋ฃŒ ์„ ์–ธ ์˜ˆ์‹œ

๋‹ค์Œ์€ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ณด๊ณ ์„œ์— ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ํ•œ๋‹ค (์ฃผ์˜์‚ฌํ•ญ ์ฐธ๊ณ ).

๏ฌ ํ˜„์žฌ ์ž…๋ ฅ ๊ฐ’์ด ์œ ํšจํ•œ์ง€ ํ™•์ธํ•˜๋Š” ํ•จ์ˆ˜๋กœ, ํ˜„์žฌ ์ž…๋ ฅ ๊ฐ’๊ณผ ์ด์ „ ์ž…๋ ฅ ๊ฐ’์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ›๋Š”๋‹ค. ์ด์ „ ์ž…๋ ฅ ๊ฐ’์€ ์ข…๋ฃŒ ์„ ์–ธ์ด ์ค‘๋ณต๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋ฉฐ, ์ด ๋ณ€์ˆ˜๋Š” ์ง์ „ ์ž…๋ ฅ ๊ฐ’์„ ์˜๋ฏธํ•˜์ง€ ์•Š๋Š”๋‹ค. ํ˜„์žฌ ์ž…๋ ฅ ๊ฐ’์ด ์œ ํšจํ•˜๋‹ค๋ฉด ์ฐธ์„ ๋‚˜ํƒ€๋‚ด๋Š” 1์„, ์œ ํšจํ•˜์ง€ ์•Š๋‹ค๋ฉด ๊ฑฐ์ง“์„ ๋‚˜ํƒ€๋‚ด๋Š” 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
int isResponseValid(int response, int prevResponse)

3. ์ŠนํŒจ ๊ฒฐ์ •
๊ฒŒ์ž„์€ ์ŠนํŒจ ์ถœ๋ ฅ๋ฌธ๊ณผ ํ•จ๊ป˜ ์ข…๋ฃŒํ•œ๋‹ค. ์ข…๋ฃŒ ์‹œ์  ๋•Œ ๋‘ ํ”Œ๋ ˆ์ด์–ด๋“ค ์ค‘ ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜๊ฐ€ ๋งŽ์€ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์Šน๋ฆฌํ•˜๋ฉฐ, ๊ฐ™์„ ๊ฒฝ์šฐ ๋ฌด์Šน๋ถ€๊ฐ€ ๋œ๋‹ค. ๋‹ค์Œ์€ ์„ธ ๊ฐ€์ง€ ๊ฒฝ์šฐ์˜ ์ŠนํŒจ ์ถœ๋ ฅ๋ฌธ์„ ๋ณด์—ฌ์ฃผ๋Š” ์˜ˆ์‹œ๋“ค์ด๋‹ค.

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -1

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -2

WIN P1, P1 14, P2 13
๊ฒŒ์ž„ ์ข…๋ฃŒ ์˜ˆ์‹œ: ํ”Œ๋ ˆ์ด์–ด 1 ์šฐ์Šน

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] -2

WIN P2, P1 13, P2 14
๊ฒŒ์ž„ ์ข…๋ฃŒ ์˜ˆ์‹œ: ํ”Œ๋ ˆ์ด์–ด 2 ์šฐ์Šน

AFTER P2
P1 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹
P2 โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—โ—‹

PROCEED OR NOT? ENTER ANSWER WITH [GO 3, END โ€“PLAYER NUM(-1 OR -2)] 0 0 IS NOT VALID RESPONSE

DRAW, P1 14, P2 14
๊ฒŒ์ž„ ์ข…๋ฃŒ ์˜ˆ์‹œ: ๋ฌด์Šน๋ถ€

๋‹ค์Œ์€ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ํ•จ์ˆ˜๋“ค์ด๋‹ค. ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ณด๊ณ ์„œ์— ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ํ•œ๋‹ค (์ฃผ์˜์‚ฌํ•ญ ์ฐธ๊ณ ).

๏ฌ ๋‘ ํ”Œ๋ ˆ์ด์–ด๋“ค์˜ ๊ฒŒ์ž„ ์ŠนํŒจ๋ฅผ ํŒ๋‹จํ•˜์—ฌ ๊ทธ ์ŠนํŒจ๋ฅผ ํŒ๋‹จํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋‘ ํ”Œ๋ ˆ์ด์–ด์˜ ๊ฒ€์€์ƒ‰ ๊ณต ์ˆ˜๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›์•„ ์Šน๋ฆฌํ•œ ํ”Œ๋ ˆ์ด์–ด์˜ ๋ฒˆํ˜ธ ๋˜๋Š” ๋ฌด์Šน๋ถ€๋ฅผ ์˜๋ฏธํ•˜๋Š” 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. int calcWinner(int player1, int player2)

๏ฌ ๊ฒŒ์ž„์˜ ์ŠนํŒจ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ์ถœ๋ ฅ ๋ฌธ๊ตฌ๋ฅผ ๋‹ฌ๋ฆฌํ•˜์—ฌ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ์ŠนํŒจ ๊ฒฐ๊ณผ๋Š” ํ•จ์ˆ˜ ๋‚ด์—์„œ calcWinner() ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์–ป๋Š”๋‹ค. ์ถœ๋ ฅ๋ฌธ์€ ์ŠนํŒจ ๊ฒฐ๊ณผ, ํ”Œ๋ ˆ์ด์–ด 1์˜ ๊ฒ€์€์ƒ‰ ๊ณต์˜ ์ˆ˜, ํ”Œ๋ ˆ์ด์–ด 2์˜ ๊ฒ€์€์ƒ‰ ๊ณต์˜ ์ˆ˜ ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•˜๋ฉฐ, ์œ„ ์˜ˆ์‹œ์™€ ๋™์ผํ•˜๊ฒŒ ์ž‘์„ฑํ•œ๋‹ค. void printWinner(int player1, int player2)

๏ฎ Problem 2: ๋ณผ๋ง ์ ์ˆ˜ ๊ณ„์‚ฐ (20์ )

(๋ชฉ์ ) ์ด๋ฒˆ ๊ณผ์ œ๋Š” ๋ฌธ์ œ ์ดํ•ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ, ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜ ์‚ฌ์šฉ์„ ๋ชฉ์ ์œผ๋กœ ํ•œ๋‹ค.

(์ฃผ์˜์‚ฌํ•ญ)
๏ฌ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ตํžˆ๋Š” ๋ฌธ์ œ์ด๋ฏ€๋กœ main ํ•จ์ˆ˜์— ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ ๊ฒฝ์šฐ 0์  ์ฒ˜๋ฆฌํ•จ.
๏ฌ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐœ์ˆ˜ ๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ ์ž๋ฃŒํ˜•, ํ•จ์ˆ˜ ์ด๋ฆ„, ๋ฆฌํ„ด ์ž๋ฃŒํ˜• ๋“ฑ ์ž์œ ๋กญ๊ฒŒ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•จ. ๊ทธ๋Ÿฌ๋‚˜ ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ฌด์—‡์„ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ•ด์„œ ๊ตฌํ˜„ํ–ˆ๋Š”์ง€ ๋ณด๊ณ ์„œ์— ํฌํ•จํ•˜๋„๋ก ํ•œ๋‹ค.
๏ฌ ์ด๋ฒˆ ๋ฌธ์ œ์—์„œ๋Š” ์š”๊ตฌํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜๊ฐ€ ํ•˜๋‚˜์ด๋ฏ€๋กœ, ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜ ๋‘ ๊ฐœ๋ฅผ ๋” ์ถ”๊ฐ€ํ•˜๋„๋ก ํ•œ๋‹ค. ์œ„ ์„ค๋ช…๊ณผ ๋™์ผํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•˜๊ณ ์ž ํ•˜๋Š” ํ•จ์ˆ˜๋“ค์˜ ์ด๋ฆ„, ๊ธฐ๋Šฅ ๋“ฑ์€ ์ž์œ ๋กญ๊ฒŒ ๊ตฌํ˜„ํ•œ๋‹ค.
๏ฌ ์ „์—ญ ๋ณ€์ˆ˜, ๋ฐฐ์—ด ๋ฐ goto ๋ฌธ์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์œผ๋ฉฐ, ์‚ฌ์šฉ ์‹œ 0์  ์ฒ˜๋ฆฌํ•จ.
๏ฌ ์ž…๋ ฅ ๊ฐ’์€ ํŒŒ์ผ๋กœ๋ถ€ํ„ฐ ์ฝ์–ด์™€์•ผ ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ ๋ฐ›์„ ๊ฒฝ์šฐ ๊ฐ์  ์ฒ˜๋ฆฌํ•จ.
๏ฌ ๋ฌธ์ œ์˜ ์ถœ๋ ฅ ํ˜•์‹์€ ์‹คํ–‰ ์˜ˆ์‹œ์™€ ๋™์ผํ•˜๊ฒŒ ์ž‘์„ฑ ๋ฐ”๋žŒ.

0. ๊ทœ์น™ ์„ค๋ช…
๋ณผ๋ง ๊ฒŒ์ž„ ์ ์ˆ˜ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•œ๋‹ค. ๋ณผ๋ง ๊ฒŒ์ž„์˜ ๊ฒฐ๊ณผ๋Š” ์‚ฌ์ „์— ์ž‘์„ฑ๋œ ํŒŒ์ผ๋กœ๋ถ€ํ„ฐ ์ฝ์–ด์™€์•ผ ํ•˜๋ฉฐ, ๊ธฐํ˜ธ์™€ ์ˆซ์ž๋ฅผ ํ•ด์„ํ•˜์—ฌ ์ ์ˆ˜ ๊ณ„์‚ฐ์„ ํ•œ๋‹ค. ์ ์ˆ˜ ๊ณ„์‚ฐ ๊ทœ์น™์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

1. ํ•œ ๊ฒŒ์ž„์€ ์ด 10๊ฐœ์˜ ํ”„๋ ˆ์ž„์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
2. ๊ฐ ํ”„๋ ˆ์ž„๋งˆ๋‹ค ๋ณผ๋ง ํ•€ 10๊ฐœ๋ฅผ ์“ฐ๋ŸฌํŠธ๋ฆฌ๋Š” ๊ฒŒ์ž„์ด๋ฉฐ ๋ณผ๋ง ํ•€ 1๊ฐœ๋‹น 1์ ์ด๋‹ค.
3. ๊ฐ ํ”„๋ ˆ์ž„์€ ๋‘ ๋ฒˆ์˜ ์‹œ๋„๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค.
A. ๋ณผ๋ง ํ•€ 10๊ฐœ๋ฅผ ์ฒซ ๋ฒˆ์งธ ์‹œ๋„๋กœ ๋ชจ๋‘ ์“ฐ๋ŸฌํŠธ๋ฆด ๊ฒฝ์šฐ ์ŠคํŠธ๋ผ์ดํฌ(S)๋ผ ํ•œ๋‹ค. ์ด ๊ฒฝ์šฐ ๋‘ ๋ฒˆ์งธ ์‹œ๋„๋Š” ์‚ฌ๋ผ์ง„๋‹ค. ๋‹จ, ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์—์„œ๋Š” ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์น˜๋”๋ผ๋„ ์‚ฌ๋ผ์ง€์ง€ ์•Š์œผ๋ฉฐ, ๊ฒฐ๊ณผ์ ์œผ๋กœ ํ•ด๋‹น ํ”„๋ ˆ์ž„์—์„œ๋Š” ์„ธ ๋ฒˆ์˜ ๊ธฐํšŒ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.
B. ๋ณผ๋ง ํ•€ 10๊ฐœ๋ฅผ ๋‘ ๋ฒˆ์˜ ์‹œ๋„๋กœ ๋ชจ๋‘ ์“ฐ๋ŸฌํŠธ๋ฆด ๊ฒฝ์šฐ ์ŠคํŽ˜์–ด(P)๋ผ ํ•œ๋‹ค. ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์—์„œ ์ŠคํŽ˜์–ด๋ฅผ ์น  ๊ฒฝ์šฐ ํ•œ ๋ฒˆ์˜ ์‹œ๋„๊ฐ€ ์ถ”๊ฐ€์ ์œผ๋กœ ์ฃผ์–ด์ง€๋ฉฐ, ๊ฒฐ๊ณผ์ ์œผ๋กœ ํ•ด๋‹น ํ”„๋ ˆ์ž„์—์„œ๋Š” ์„ธ ๋ฒˆ์˜ ๊ธฐํšŒ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.
4. ๋‹ค์Œ์˜ ๊ฒฝ์šฐ์—๋Š” ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
A. ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์น˜๋ฉด ๊ทธ ๋‹ค์Œ ๋‘ ๋ฒˆ์˜ ์‹œ๋„ ๋™์•ˆ ์“ฐ๋ŸฌํŠธ๋ฆฐ ๋ณผ๋ง ํ•€๋“ค์˜ ๊ฐœ์ˆ˜๋งŒํผ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›๋Š”๋‹ค.
B. ์ŠคํŽ˜์–ด๋ฅผ ์น˜๋ฉด ๊ทธ ๋‹ค์Œ ์‹œ๋„ ๋•Œ ์“ฐ๋ŸฌํŠธ๋ฆฐ ๋ณผ๋ง ํ•€์˜ ๊ฐœ์ˆ˜๋งŒํผ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›๋Š”๋‹ค.
C. ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์—์„œ๋Š” ์ŠคํŠธ๋ผ์ดํฌ, ์ŠคํŽ˜์–ด ์ƒ๊ด€์—†์ด ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์„ ์ˆ˜ ์—†๋‹ค.

๋‹ค์Œ์€ ์ ์ˆ˜ ๊ณ„์‚ฐ ์˜ˆ์‹œ์ด๋‹ค. ์ ์ˆ˜ํŒ์— ์ŠคํŠธ๋ผ์ดํฌ๋Š” S, ์ŠคํŽ˜์–ด๋Š” P, ํ•€์„ ํ•˜๋‚˜๋„ ๋ชป ์“ฐ๋ŸฌํŠธ๋ฆฐ ๊ฒฝ์šฐ๋Š” โ€“์œผ๋กœ ํ‘œ์‹œ๋œ๋‹ค. ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํ”„๋ ˆ์ž„์€ ๋‘ ์‹œ๋„์˜ ๊ฒฐ๊ณผ ๊ฐ’์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์€ ์ŠคํŽ˜์–ด๋‚˜ ์ŠคํŠธ๋ผ์ดํฌ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์„ธ ๋ฒˆ์˜ ์‹œ๋„ ๊ฐ’์œผ๋กœ ๊ธฐ์ž…๋œ๋‹ค. ํ‘œ๋‚ด ์‚ฌ์„  ํ‘œ์‹œ๋Š” ์ฒซ ์‹œ๋„๋กœ ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์น  ๊ฒฝ์šฐ ๋‹ค์Œ ์‹œ๋„๋Š” ์‚ฌ๋ผ์ง์„ ์˜๋ฏธํ•œ๋‹ค. ์ ์ˆ˜ ๊ณ„์‚ฐ ์˜ˆ์‹œ์˜ ํ”„๋ ˆ์ž„๋ณ„ ์ ์ˆ˜๋Š” ๊ฒŒ์ž„์˜ ๊ฒฐ๊ณผ๋กœ์จ ์ฃผ์–ด์ง€๋Š” ๊ฐ’์ด๋ฉฐ, ์ด๋ฒˆ ๊ณผ์ œ๋Š” ๊ฒŒ์ž„ ๊ฒฐ๊ณผ์˜ ์ ์ˆ˜ ๊ณ„์‚ฐ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. (ํŒŒ๋ž€์ƒ‰ ํ‘œ์‹œ)

๋‹ค์Œ์€ ์ ์ˆ˜ ๊ณ„์‚ฐ ์˜ˆ์‹œ์˜ ํ”„๋ ˆ์ž„๋ณ„ ๊ณ„์‚ฐ ๊ณผ์ •์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š์€ ์ ์ˆ˜๋กœ, ์“ฐ๋ŸฌํŠธ๋ฆฐ ๋ณผ๋ง ํ•€์˜ ๊ฐœ์ˆ˜์ด๋‹ค. ํ”„๋ ˆ์ž„ ๋‚ด ๊ฐ ์‹œ๋„๋ณ„ ์ ์ˆ˜๋ฅผ ์ •์ˆ˜ ๊ฐ’์œผ๋กœ ํ•ด์„ํ•œ ๊ฐ’๋“ค๋กœ ๊ณ„์‚ฐ ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ฐ ํ”„๋ ˆ์ž„๋งˆ๋‹ค ์ŠคํŽ˜์–ด ๋˜๋Š” ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์น  ๊ฒฝ์šฐ, ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” ์ตœ๋Œ€ ๊ฐ’์ธ 10์„ ๊ฐ–๋Š”๋‹ค (๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„ ์ œ์™ธ). ์ถ”๊ฐ€ ์ ์ˆ˜๋Š” ๊ทœ์น™์— ๋”ฐ๋ผ ํ”„๋ ˆ์ž„ ๋‚ด ๊ฒฐ๊ณผ ๊ฐ’๋“ค์— ์ŠคํŽ˜์–ด๋‚˜ ์ŠคํŠธ๋ผ์ดํฌ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ๊ณ„์‚ฐํ•œ๋‹ค. ํ”„๋ ˆ์ž„ 1. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 8 + 1 = 9์ด๋‹ค.
ํ”„๋ ˆ์ž„ 2. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 7 + 3 = 10์ด๋‹ค. ์ŠคํŽ˜์–ด๋ฅผ ์นœ ๊ฒฝ์šฐ, ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ์ฒซ ๋ฒˆ์งธ ์‹œ๋„ ๊ฐ’์ธ 9๋งŒํผ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 2์˜ ํ•ฉ๊ณ„๋Š” 19๊ฐ€ ๋œ๋‹ค. ํ”„๋ ˆ์ž„ 3. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 9 + 0 = 9์ด๋‹ค.
ํ”„๋ ˆ์ž„ 4. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 10์ด๋‹ค. ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์นœ ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ๋‘ ์‹œ๋„๋“ค์˜ ๊ฐ’์„ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ 6 + 3 = 9์ด๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 4์˜ ํ•ฉ๊ณ„๋Š” 19๊ฐ€ ๋œ๋‹ค.
ํ”„๋ ˆ์ž„ 5. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 6 + 3 = 9์ด๋‹ค.
ํ”„๋ ˆ์ž„ 6. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 10์ด๋‹ค. ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์นœ ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ๋‘ ์‹œ๋„๋“ค์˜ ๊ฐ’์„ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ 8 + 2 = 10์ด๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 6์˜ ํ•ฉ๊ณ„๋Š” 20์ด ๋œ๋‹ค.
ํ”„๋ ˆ์ž„ 7. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 8 + 2 = 10์ด๋‹ค. ์ŠคํŽ˜์–ด๋ฅผ ์นœ ๊ฒฝ์šฐ, ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ์ฒซ ๋ฒˆ์งธ ์‹œ๋„ ๊ฐ’์ธ 10๋งŒํผ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 7์˜ ํ•ฉ๊ณ„๋Š” 20์ด ๋œ๋‹ค.
ํ”„๋ ˆ์ž„ 8. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 10์ด๋‹ค. ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์นœ ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ๋‘ ์‹œ๋„๋“ค์˜ ๊ฐ’์„ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ 10 + 6 = 16์ด๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 8์˜ ํ•ฉ๊ณ„๋Š” 26์ด ๋œ๋‹ค. ํ”„๋ ˆ์ž„ 9. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 10์ด๋‹ค. ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์นœ ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋ ˆ์ž„์˜ ๋‘ ์‹œ๋„๋“ค์˜ ๊ฐ’์„ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋ฐ›์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ 6 + 4 = 10์ด๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋ ˆ์ž„ 9์˜ ํ•ฉ๊ณ„๋Š” 20์ด ๋œ๋‹ค.
ํ”„๋ ˆ์ž„ 10. ๊ธฐ๋ณธ ์ ์ˆ˜๋Š” 6 + 4 + 10 = 20์ด๋‹ค. ๋งˆ์ง€๋ง‰ ํ”„๋ ˆ์ž„์€ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ํ”„๋ ˆ์ž„ 10์˜ ํ•ฉ๊ณ„๋Š” 20์ด ๋œ๋‹ค.

1. ๋ณผ๋ง ๊ฒฐ๊ณผ ์ž…๋ ฅ ๋ณผ๋ง ๊ฒŒ์ž„ ๊ฒฐ๊ณผ๊ฐ€ ๊ธฐ๋ก๋˜์–ด ์žˆ๋Š” ํ…์ŠคํŠธ ํŒŒ์ผ์—์„œ ๋ฌธ์ž๋“ค์„ ์ฝ์–ด ๋ณผ๋ง ์ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค. ๋‹ค์Œ์€ ๋ณผ๋ง ๊ฒฐ๊ณผ ์ž…๋ ฅ ์˜ˆ์ œ๋“ค์ด๋ฉฐ, ๊ณผ์ œ2 ๊ณต์ง€ ๋ž€์—์„œ ํ…์ŠคํŠธ ํŒŒ์ผ๋“ค์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค (Example1-4). ๊ฐ ์‹œ๋„๋งˆ๋‹ค ์“ฐ๋ŸฌํŠธ๋ฆฐ ๋ณผ๋ง ํ•€์˜ ๊ฐœ์ˆ˜๊ฐ€ ๊ณต๋ฐฑ์—†์ด ์ฃผ์–ด์ง€๋ฉฐ, ์œ„ ์ ์ˆ˜ ๊ณ„์‚ฐ ์˜ˆ์‹œ์™€ ๋™์ผํ•˜๊ฒŒ ์ŠคํŠธ๋ผ์ดํฌ๋Š” S, ์ŠคํŽ˜์–ด๋Š” P, ํ•€์„ ํ•˜๋‚˜๋„ ๋ชป ์“ฐ๋ŸฌํŠธ๋ฆฐ ๊ฒฝ์šฐ๋Š” โ€“์œผ๋กœ ํ‘œ์‹œ๋œ๋‹ค.

Example1.txt
9-8P72S9P-9S-P9-SS8

Example2.txt
SSSSSSSSSSSS

Example3.txt
9P8-SS8-S819P81S9P

Example4.txt
6P71SS9PS8PS9P9-

๊ฐ ์˜ˆ์ œ๋“ค์˜ ๊ฒฐ๊ณผ ๊ฐ’์€ ์ˆœ์„œ๋Œ€๋กœ 150, 300, 155, 182์ด๋‹ค. ๋‘ ๋ฒˆ์งธ ์˜ˆ์ œ๋Š” ๋ชจ๋“  ์‹œ๋„๋“ค์—์„œ ์ŠคํŠธ๋ผ์ดํฌ๋ฅผ ์นœ ๊ฒฝ์šฐ์ด๋ฉฐ, ๊ฒฐ๊ณผ ๊ฐ’์ธ 300์€ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ ์ˆ˜์˜ ์ตœ๋Œ€ ๊ฐ’์ด๋‹ค. ์ด๋Š” ์ŠคํŠธ๋ผ์ดํฌ ํ•œ ๋ฒˆ์ด 30์ ์œผ๋กœ (ํ˜„์žฌ ๊ธฐ๋ณธ ์ ์ˆ˜ 10์ ์— ๋‹ค์Œ ํ”„๋ ˆ์ž„ ์ถ”๊ฐ€ ์ ์ˆ˜ 10์ , ๊ทธ ๋‹ค์Œ ํ”„๋ ˆ์ž„ ์ถ”๊ฐ€ ์ ์ˆ˜ 10์ ) ๊ณ„์‚ฐ๋  ์ˆ˜ ์žˆ๊ธฐ์— ๊ฐ€๋Šฅํ•œ ์ ์ˆ˜์ด๋‹ค.
์ž…๋ ฅ ํŒŒ์ผ์˜ ๋ณผ๋ง ๊ฒฐ๊ณผ ๊ฐ’์€ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋ฐ›์•„์˜ค๋Š” ๊ฐ’์ด ์•„๋‹ˆ๋ฏ€๋กœ ์ถ”๊ฐ€์ ์ธ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๊ตฌํ˜„์€ ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค. ์ฆ‰, ๋น„์ •์ƒ์ ์ธ ๊ฒฐ๊ณผ ๊ฐ’์— ๋Œ€ํ•ด์„œ๋Š” ๊ณ ๋ คํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค. ์˜ˆ์‹œ ํŒŒ์ผ๋กœ 4๊ฐœ์˜ ํŒŒ์ผ์ด ์ฃผ์–ด์ง€๋‚˜, ์ด ๊ณผ์ œ์—์„œ๋Š” ์ ์ˆ˜ ๊ณ„์‚ฐ์„ ์œ„ํ•˜์—ฌ ์ฝ๋Š” ํ…์ŠคํŠธ ํŒŒ์ผ ์ด๋ฆ„์„ Example.txt๋กœ ๊ณ ์ •ํ•ด์„œ ๊ตฌํ˜„ํ•˜๋„๋ก ํ•œ๋‹ค.

2. ์ ์ˆ˜ ๊ณ„์‚ฐ
๊ธฐ๋ณธ ์ ์ˆ˜๋Š” ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š์€ ์ ์ˆ˜๋กœ, ์“ฐ๋ŸฌํŠธ๋ฆฐ ๋ณผ๋ง ํ•€ ๊ฐœ์ˆ˜๋งˆ๋‹ค 1์ ์”ฉ ๊ณ„์‚ฐ๋œ๋‹ค. ๋ณผ๋ง ๊ฒฐ๊ณผ๊ฐ€ ์ž…๋ ฅ๋œ ํŒŒ์ผ์€ ์œ„ ๊ฒฐ๊ณผ ์ž…๋ ฅ ์„ค๋ช…๊ณผ ๊ฐ™์ด ๊ธฐํ˜ธ์™€ ์ˆซ์ž๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.
์ถ”๊ฐ€ ์ ์ˆ˜๋Š” ์ŠคํŠธ๋ผ์ดํฌ๋‚˜ ์ŠคํŽ˜์–ด๋ฅผ ์น  ๊ฒฝ์šฐ ์ถ”๊ฐ€๋กœ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ ์ˆ˜์ด๋‹ค. ์ŠคํŽ˜์–ด๋Š” ๋‹ค์Œ ํ•œ ๋ฒˆ ๊ธฐํšŒ ๋™์•ˆ์˜ ๊ธฐ๋ณธ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€๋กœ ์–ป์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ŠคํŠธ๋ผ์ดํฌ๋Š” ๋‘ ๋ฒˆ ๋™์•ˆ์˜ ๊ธฐ๋ณธ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€๋กœ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๋Š” ํ•ด๋‹น ๋ฌธ์ž ์ดํ›„ ๊ฐ๊ฐ ํ•œ ๋ฒˆ(P), ๋‘ ๋ฒˆ(S) ๋™์•ˆ ๊ธฐ๋ณธ ์ ์ˆ˜๋ฅผ ์ถ”๊ฐ€ ์ ์ˆ˜๋กœ ๋”ํ•ด์ค˜์•ผ ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.
๋‹ค์Œ์€ ์ŠคํŠธ๋ผ์ดํฌ ๋„ค ๋ฒˆ์ด ์—ฐ์†๋œ ๊ฒฝ์šฐ์ด๋ฉฐ, ํ”„๋ ˆ์ž„ 1๊ณผ ํ”„๋ ˆ์ž„ 2์˜ ์ŠคํŠธ๋ผ์ดํฌ๋กœ๋ถ€ํ„ฐ ํ•„์š”ํ•œ ์ถ”๊ฐ€ ์ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๊ณ  ์žˆ๋‹ค. ํ”„๋ ˆ์ž„ 2์˜ ์ŠคํŠธ๋ผ์ดํฌ๋Š” 1๋ฒˆ, ํ”„๋ ˆ์ž„ 3์˜ ์ŠคํŠธ๋ผ์ดํฌ๋Š” 2๋ฒˆ (ํ”„๋ ˆ์ž„ 1 ์ŠคํŠธ๋ผ์ดํฌ๋กœ๋ถ€ํ„ฐ ํ•œ ๋ฒˆ, ํ”„๋ ˆ์ž„ 2 ์ŠคํŠธ๋ผ์ดํฌ๋กœ๋ถ€ํ„ฐ ํ•œ ๋ฒˆ)์œผ๋กœ ๊ธฐ๋ณธ ์ ์ˆ˜๊ฐ€ ์ถ”๊ฐ€ ์ ์ˆ˜๋กœ ์ฐธ์กฐ๋œ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

์ŠคํŠธ๋ผ์ดํฌ ๋„ค ๋ฒˆ ์—ฐ์†๋œ ๊ฒฝ์šฐ

๋‹ค์Œ์€ ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ๋ณ€๊ฒฝ ์‹œ ๋ณด๊ณ ์„œ์— ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ํ•œ๋‹ค. ์ด์™ธ์— ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜ ๋‘ ๊ฐœ๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๋„๋ก ํ•œ๋‹ค (์ฃผ์˜์‚ฌํ•ญ ์ฐธ๊ณ ).

๏ฌ ๊ธฐํ˜ธ์™€ ์ˆซ์ž ๋ฌธ์ž๋ฅผ ํ•ด์„ํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ํ•ด์„์ด ํ•„์š”ํ•œ ๋ฌธ์ž์™€ ์ด๋ฏธ ํ•ด์„๋œ ์ด์ „ ๋ฌธ์ž์˜ ์ •์ˆ˜ ๊ฐ’์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›์œผ๋ฉฐ, ํ•ด์„๋œ ์ •์ˆ˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. ์ด์ „ ๋ฌธ์ž์˜ ์ •์ˆ˜ ๊ฐ’์€ P(์ŠคํŽ˜์–ด)๋ฅผ ํ•ด์„ํ•˜๋Š”๋ฐ ์ด์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.
int encode(char c, int prevPoint)

3. ๊ฒฐ๊ณผ ์ถœ๋ ฅ
๊ฒฐ๊ณผ ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณผ๋ง ๊ฒฐ๊ณผ ์ž…๋ ฅ ๋ฌธ์ž๋“ค, ์ตœ์ข… ๊ณ„์‚ฐ ์ ์ˆ˜ ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

Example1 ์ถœ๋ ฅ ๊ฒฐ๊ณผ

Reviews

There are no reviews yet.

Be the first to review “CSED101 – Solved”

Your email address will not be published. Required fields are marked *