๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Algorithm/BOJ

[BOJ] ํƒ€๋…ธ์Šค (#20310)

 

 

๋ฌธ์ œ

 

์–ด๋Š ๋‚ , ํƒ€๋…ธ์Šค๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด S๋ฅผ ๋ณด์•˜๋‹ค. ์‹ ๊ธฐํ•˜๊ฒŒ๋„, S๊ฐ€ ํฌํ•จํ•˜๋Š” 0์˜ ๊ฐœ์ˆ˜์™€ S๊ฐ€ ํฌํ•จํ•˜๋Š” 1์˜ ๊ฐœ์ˆ˜๋Š” ๋ชจ๋‘ ์ง์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค.

๊ฐ‘์ž๊ธฐ ์‹ฌ์ˆ ์ด ๋‚œ ํƒ€๋…ธ์Šค๋Š” S๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฌธ์ž ์ค‘ ์ ˆ๋ฐ˜์˜ 0๊ณผ ์ ˆ๋ฐ˜์˜ 1์„ ์ œ๊ฑฐํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด S′๋ฅผ ๋งŒ๋“ค๊ณ ์ž ํ•œ๋‹ค. S′๋กœ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ž์—ด ์ค‘ ์‚ฌ์ „์ˆœ์œผ๋กœ ๊ฐ€์žฅ ๋น ๋ฅธ ๊ฒƒ์„ ๊ตฌํ•˜์‹œ์˜ค.

 

 

 

ํ•ด์„ค ์ฝ”๋“œ 
num = list(str(input()))

# 0 ๊ณผ 1 ์˜ ์ œ๊ฑฐ ํšŸ์ˆ˜ ๊ฐ๊ฐ ๊ตฌํ•ด์ฃผ๊ธฐ 
cnt = num.count('0')//2 
knt = num.count('1')//2

# 0์€ ๋’ค์—์„œ๋ถ€ํ„ฐ 1์€ ์•ž์—์„œ๋ถ€ํ„ฐ ์ œ๊ฑฐํ•˜๊ธฐ 
for _ in range(cnt):
  num.pop(-(num[::-1].index('0'))-1)

for _ in range(knt):
  num.pop(num.index('1'))

print(''.join(num))
๋ถ„์„ > ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ  ๋ฐ”๋กœ ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๊ณ  ํ•˜์ง€ ๋ง๊ณ  ์šฐ์„  ์ •ํ™•ํ•˜๊ฒŒ ์–ด๋–ค ๋…ผ๋ฆฌ ๊ตฌ์กฐ๋กœ ์ฝ”๋“œ๋ฅผ ์งœ์•ผ ํ• ์ง€ ๊ณ ๋ฏผํ•ด๋ณด๊ณ  ์ฝ”๋“œ ์งœ๋Š” ์—ฐ์Šต์„ ํ•ด์•ผํ•  ํ•„์š”์„ฑ์„ ๋Š๊ผˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ๊ฐ์˜ ์ˆซ์ž๋ฅผ ์…€ ๋•Œ ์•ž๊ณผ ๋’ค๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ•ด์„œ ์„ธ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค๋Š” ๊ฒƒ๋„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฃผ์„ ๋‹ฌ๊ณ  ์ฝ”๋“œ ์งœ๋Š” ์—ฐ์Šต์„ ํ•˜์ž. 

 

 

 

 

20310๋ฒˆ: ํƒ€๋…ธ์Šค

์–ด๋Š ๋‚ , ํƒ€๋…ธ์Šค๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด $S$๋ฅผ ๋ณด์•˜๋‹ค. ์‹ ๊ธฐํ•˜๊ฒŒ๋„, $S$๊ฐ€ ํฌํ•จํ•˜๋Š” 0์˜ ๊ฐœ์ˆ˜์™€ $S$๊ฐ€ ํฌํ•จํ•˜๋Š” 1์˜ ๊ฐœ์ˆ˜๋Š” ๋ชจ๋‘ ์ง์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ๊ฐ‘์ž๊ธฐ ์‹ฌ์ˆ ์ด ๋‚œ ํƒ€๋…ธ์Šค๋Š” $S$๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฌธ์ž

www.acmicpc.net

 

'Algorithm > BOJ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[BOJ] ์ˆ˜๊ฐ•์‹ ์ฒญ (#13414)  (0) 2022.04.23
[BOJ] ๋งˆ์ธํฌ๋ž˜ํ”„ํŠธ (#18111)  (0) 2022.04.22
[BOJ] ๊ณต (#1547)  (0) 2022.04.15
[BOJ] ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ (#1032)  (0) 2022.04.13
[BOJ] ์ง„๋ฒ•๋ณ€ํ™˜ (#2745)  (0) 2022.04.12