๊ธฐ๋ก๋ฐฉ

BOJ_2810 : ์ปตํ™€๋” ๋ณธ๋ฌธ

CodingTest/Python

BOJ_2810 : ์ปตํ™€๋”

Soom_1n 2022. 11. 5. 21:07

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

2810๋ฒˆ: ์ปตํ™€๋”

์ฒซ์งธ ์ค„์— ์ขŒ์„์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 50) ๋‘˜์งธ ์ค„์—๋Š” ์ขŒ์„์˜ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ์ขŒ์„ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ปต ๋†“์„ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์˜ ์ตœ๋Œ€๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.
  • ์ผ๋ฐ˜์„๊ณผ ์ปคํ”Œ์„์„ ๊ตฌ๋ถ„ํ•ด ๊ณ„์‚ฐํ•œ๋‹ค.
    • ์ผ๋ฐ˜์„์€ ์™ผ์ชฝ ์ปตํ™€๋”๊ฐ€ ๋น„์—ˆ์œผ๋ฉด ๋ฌด์กฐ๊ฑด ์™ผ์ชฝ, ์•„๋‹ˆ๋ฉด ์˜ค๋ฅธ์ชฝ์— ๋†“๋Š”๋‹ค.
      • ๋”ฐ๋ผ์„œ ๋ฌด์กฐ๊ฑด ์ปต์„ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ์ปคํ”Œ์„์€ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ ๊ตฌ๋ถ„์ด ํ•„์š”ํ•˜๋‹ค.
      • ์ปคํ”Œ์„์˜ ์™ผ์ชฝ ์ขŒ์„์€ ์™ผ์ชฝ ์ปตํ™€๋”์— ์ปต์ด ๋†“์˜€๋Š”์ง€ ํ™•์ธ์ด ํ•„์š”ํ•˜๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

n = int(input())
arr = list(input())
answer = 0

nextL = False
left = True # ์™ผ์ชฝ ์ปตํ™€๋” ์‚ฌ์šฉ์ด ๋˜๋Š”๊ฐ€
for i in arr[:-1]:
    if i == 'S': # ์ผ๋ฐ˜ ์ขŒ์„
        answer += 1
    elif not nextL:   # ์ปคํ”Œ ์ขŒ์„ ์™ผ์ชฝ
        nextL = True
        if left:
            answer += 1
    else:             # ์ปคํ”Œ ์ขŒ์„ ์˜ค๋ฅธ์ชฝ
        nextL = False
        answer += 1
        left = False
print(answer + 1)

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • ๋ณ€์ˆ˜ nextL๋กœ 2๋ฒˆ์งธ ์ปคํ”Œ์„์ธ์ง€ ํ™•์ธํ•œ๋‹ค.
  • ๋ณ€์ˆ˜ left๋กœ ์™ผ์ชฝ ์ปตํ™€๋”๋ฅผ ์“ธ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
  • ๋ฌธ์ž์—ด์˜ ๋ฌธ์ž๋ฅผ ํ•˜๋‚˜์”ฉ ๊ฒ€์‚ฌํ•˜๋ฉฐ ์ปต์„ ๋†“์„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ answer๋กœ ์นด์šดํŠธํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์ฒ˜์Œ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ  ํ’€์ด๋ฅผ ์–ด๋ ต๊ฒŒ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ, ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ผ ์‰ฝ๊ฒŒ ํ’€๋ฆฌ๋Š” ๊ทœ์น™์ด ์žˆ์„๊ฑฐ๋ผ ์ƒ๊ฐํ•˜๊ณ  ์—ฌ๋Ÿฌ ๋ฐฉ์‹์„ ๊ณ ๋ฏผํ•˜๋‹ค ํ’€์ด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  • ๋‹ค ํ’€๊ณ  ๋‚œ ํ›„์—๋„ ์ฝ”๋“œ๋ฅผ ๋ฆฌํŒฉํ† ๋งํ•˜๋ฉด์„œ ๊น”๋”ํ•˜๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค.
  • ๋ฌธ์ œ์˜ ํ’€์ด๋ฅผ ์™„์ „ํžˆ ์ •๋ฆฌํ•˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ ์ฝ”๋”ฉ์„ ๋“ค์–ด๊ฐ€๋ฉด, ํ™•์‹คํžˆ ์ฑ„์ ํ•ด๋ณด๋ฉฐ ๋””๋ฒ„๊น…ํ•˜๋Š” ์Šคํ”ผ๋“œ๋Š” ์˜ฌ๋ผ๊ฐ€์ง€๋งŒ ๋๋‚ฌ์„๋•Œ ์ž˜ ์ดํ•ดํ•œ ๊ธฐ๋ถ„์ด ์ ์–ด์ง€๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

728x90

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

BOJ_5566 : ์ฃผ์‚ฌ์œ„ ๊ฒŒ์ž„  (0) 2022.11.11
BOJ_13301 : ํƒ€์ผ ์žฅ์‹๋ฌผ  (0) 2022.11.05
BOJ_4998 : ์ €๊ธˆ  (0) 2022.11.04
BOJ_1193 : ๋ถ„์ˆ˜์ฐพ๊ธฐ  (0) 2022.10.19
BOJ_5622 : ๋‹ค์ด์–ผ  (0) 2022.10.19