๊ด€๋ฆฌ ๋ฉ”๋‰ด

DOing

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ตฌํ˜„ with Python ๋ณธ๋ฌธ

์•Œ๊ณ ๋ฆฌ์ฆ˜

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ตฌํ˜„ with Python

mangdo 2021. 5. 21. 16:45

๐Ÿ’ก ๊ตฌํ˜„

๊ตฌํ˜„์ด๋ž€ '์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์†Œ์Šค์ฝ”๋“œ๋กœ ๋ฐ”๊พธ๋Š” ๊ณผ์ •'์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ต์žฌ์—์„œ๋Š” ๋Œ€๋ถ€๋ถ„ ๊ตฌํ˜„์„ ๋ณ„๋„์˜ ์œ ํ˜•์œผ๋กœ ๋‹ค๋ฃจ์ง€ ์•Š์ง€๋งŒ, ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ๋Š” ๊ตฌํ˜„์ด ์ค‘์‹ฌ์œผ๋กœ ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ž์ฃผ ์ถœ์ œ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ค„๋ณด๊ธฐ๋กœ ํ•œ๋‹ค. ๋ณดํ†ต ๊ตฌํ˜„๋ฌธ์ œ๋Š” 'ํ’€์ด๋ฅผ ๋– ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์€ ์‰ฝ์ง€๋งŒ ์†Œ์Šค์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๊ธฐ ์–ด๋ ค์šด ๋ฌธ์ œ'๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

  ์˜ˆ๋ฅผ ๋“ค์–ด์„œ ์™„์ „ ํƒ์ƒ‰, ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฌธ์ œ ์œ ํ˜•์ด ์žˆ๋‹ค. ์™„์ „ ํƒ์ƒ‰์€ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜๋ฏธํ•˜๊ณ , ์‹œ๋ฎฌ๋ ˆ์ด์…˜์€ ๋ฌธ์ œ์—์„œ ์ œ์‹œํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•œ๋‹จ๊ณ„์”ฉ ์ฐจ๋ก€๋Œ€๋กœ ์ง์ ‘ ์ˆ˜ํ–‰ํ•ด์•ผํ•˜๋Š” ๋ฌธ์ œ์œ ํ˜•์„ ์˜๋ฏธํ•œ๋‹ค.

๐Ÿ’ก ์ฃผ์˜์ 

  ์™„์ „ ํƒ์ƒ‰์ฒ˜๋Ÿผ ๋งŽ์€ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ• ๋•Œ ์ฃผ์˜ํ•ดํ•  ์ ์€ ์ผ๋ฐ˜ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธํ™˜๊ฒฝ์—์„œ๋Š” ํŒŒ์ด์ฌ์œผ๋กœ ์ œ์ถœํ•œ ์ฝ”๋“œ๊ฐ€ 1์ดˆ์— 2000๋งŒ๋ฒˆ(2*10^7)์˜ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ๋Š” ์‹œ๊ฐ„์ œํ•œ์ด 1์ดˆ์ž„์œผ๋กœ ์ด๋ฅผ ๊ธฐ์–ตํ•˜๋„๋ก ํ•˜์ž.

๐Ÿ’ก ๊ตฌํ˜„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋Œ€ํ‘œ์  ์˜ˆ์‹œ

Q1. ์ƒํ•˜์ขŒ์šฐ

  ์—ฌํ–‰๊ฐ€ A๋Š” N * Nํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ๊ณต๊ฐ„์œ„์— ์„œ์žˆ๋‹ค. ์ด๊ณต๊ฐ„์€ 1*1 ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๋‹ค. ๊ฐ€์žฅ ์™ผ์ชฝ ์œ„ ์ขŒํ‘œ๋Š” (1,1)์ด๋ฉฐ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ์ขŒํ‘œ๋Š” (N, N)์— ํ•ด๋‹นํ•œ๋‹ค. ์—ฌํ–‰๊ฐ€ A๋Š” ์ƒํ•˜์ขŒ์šฐ ๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์‹œ์ž‘ ์ขŒํ‘œ๋Š” ํ•ญ์ƒ(1,1)์ด๋‹ค. ์šฐ๋ฆฌ ์•ž์— ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ด๋™ํ•  ๊ณ„ํš์ด ์ ํžŒ ๊ณ„ํš์„œ๊ฐ€ ๋†“์—ฌ์žˆ๋‹ค.

  ๊ณ„ํš์„œ์—๋Š” L, R, U, D ์ค‘ ํ•˜๋‚˜์˜ ๋ฌธ์ž๊ฐ€ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ ํ˜€์žˆ๋‹ค. ๊ฐ ๋ฌธ์ž์˜ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

L : ์™ผ์ชฝ์œผ๋กœ ํ•œ์นธ ์ด๋™

R : ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ์นธ์ด๋™

U : ์œ„๋กœ ํ•œ์นธ ์ด๋™

D : ์•„๋ž˜๋กœ ํ•œ์นธ ์ด๋™

  ์ด๋•Œ ์—ฌํ–‰๊ฐ€ A๊ฐ€ N*N ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ๊ณต๊ฐ„์„ ๋ฒ—์–ด๋‚˜๋Š” ์›€์ง์ž„์€ ๋ฌด์‹œ๋œ๋‹ค. ๊ณ„ํš์„œ๊ฐ€ ์ฃผ์—ฌ์กŒ์„ ๋•Œ ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋„์ฐฉํ•  ์ง€์ ์˜ ์ขŒํ‘œ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ผ๋ฐ˜์ ์ธ ์ขŒํ‘œ์™€ ๋‹ค๋ฆ„์— ์ฃผ์˜ํ•˜์ž

* ์ž…๋ ฅ ์กฐ๊ฑด

- ์ฒซ์งธ์ค„์— ๊ณต๊ฐ„์˜ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” N์ด ์ฃผ์–ด์ง„๋‹ค.(1<= N <= 100)

- ๋‘˜์งธ์ค„์— ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ด๋™ํ•  ๊ณ„ํš์„œ ๋‚ด์šฉ์ด ์ฃผ์–ด์ง„๋‹ค.(1<= ์ด๋™ํšŸ์ˆ˜ <= 100)

* ์ถœ๋ ฅ ์กฐ๊ฑด

- ์ฒซ์งธ ์ค„์— ์—ฌํ–‰๊ฐ€ A๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋„์ฐฉํ•  ์ง€์ ์˜ ์ขŒํ‘œ (X, Y)๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค.

 

* ์ž…๋ ฅ ์˜ˆ์‹œ

5

R R R U D D

* ์ถœ๋ ฅ ์˜ˆ์‹œ

3 4

 

[๋ฌธ์ œ ์•„์ด๋””์–ด]

์›€์ง์ž„์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ ์ผ๋ฐ˜์ ์ธ ์ขŒํ‘œ์™€ ๋‹ค๋ฆ„์— ์ฃผ์˜ํ•˜์ž.(ํ•ญ์ƒ ํ—ท๊ฐˆ๋ฆผใ…œใ…œ)

move_types = ['U', 'D', 'L', 'R']

dx = [-1, 1, 0, 0]

dy = [0, 0, -1, 1]

 

[์ฝ”๋“œ]

n = int(input())
plans = input().split()

# ์ƒํ•˜์ขŒ์šฐ์— ๋”ฐ๋ฅธ ์ด๋™๋ฐฉํ–ฅ
move_types = ['U', 'D', 'L', 'R']
dx = [-1, 1, 0, 0]
dy = [0, 0, -1, 1] 

# ์‹œ์ž‘ ์ขŒํ‘œ
x, y = 1, 1

# ์ด๋™ ๊ณ„ํš์— ๋”ฐ๋ผ ์›€์ง์ธ๋‹ค
for plan in plans:
  # ์ด๋™๋ฐฉํ–ฅ ํ™•์ธ
  for i in range(len(move_types)):
    if plan == move_types[i]:
      nx = x + dx[i]
      ny = y + dy[i]
  
  # ๊ณต๊ฐ„์„ ๋ฒ—์–ด๋‚˜๋Š” ๊ฒฝ์šฐ ๋ฌด์‹œ
  if nx<1 or ny<1 or nx>n or ny>n:
    continue
  
  # ์ด๋™์ˆ˜ํ–‰
  x, y = nx, ny

print(x,y)

Q2. ์‹œ๊ฐ

์ •์ˆ˜ N์ด ์ž…๋ ฅ๋˜๋ฉด 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค, ์˜ˆ๋ฅผ ๋“ค์–ด 1์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ๋‹ค์Œ์€ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ์„ธ์–ด์•ผํ•˜๋Š” ์‹œ๊ฐ์ด๋‹ค.

- 00์‹œ 00๋ถ„ 03์ดˆ

๋ฐ˜๋ฉด ๋‹ค์Œ์€ 3์ด ํ•˜๋‚˜๋„ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์„ธ๋ฉด ์•ˆ๋˜๋Š” ์‹œ๊ฐ์ด๋‹ค.

- 00์‹œ 02๋ถ„ 25์ดˆ

 

*์ž…๋ ฅ์กฐ๊ฑด

- ์ฒซ์งธ์ค„์— ์ •์ˆ˜ N์ด ์ž…๋ ฅ๋œ๋‹ค (0<=N<=23)

*์ถœ๋ ฅ ์กฐ๊ฑด

- 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

*์ž…๋ ฅ ์˜ˆ์‹œ

5

*์ถœ๋ ฅ ์˜ˆ์‹œ

11475

 

[๋ฌธ์ œ ์•„์ด๋””์–ด]

 ์™„์ „ํƒ์ƒ‰์œผ๋กœ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์‹œ์— 24*60*60 = 8640๋ฒˆ์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

 ์ฃผ์˜์ ์—์„œ ๋งํ•ด๋“ฏ์ด ํŒŒ์ด์ฌ์€ 1์ดˆ์— ์ด์ฒœ๋งŒ๋ฒˆ์˜ ์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ–ˆ์œผ๋‹ˆ ์ด์ •๋„๋Š” ์™„์ „ํƒ์ƒ‰์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋•Œ๋ฌธ์— ์กฐ๊ฑด๋ฌธ์„ ์ด์šฉํ•ด ์—ฌ๋Ÿฌ ๊ฒฝ์šฐ๋กœ ๋นผ์ฃผ๋Š” ๊ฒƒ๋ณด๋‹ค๋Š” ์ „๋ถ€ ๋ฐ˜๋ณต๋ฌธ ์ฒ˜๋ฆฌํ•˜์—ฌ ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

 

[์ฝ”๋“œ]

hour = int(input())

count = 0
for h in range(0, hour+1):
  for m in range(60):
    for s in range(60):
      # ๋งค์‹œ๊ฐ ํ™•์ธ
      if '3' in str(h) + str(m) +str(s):
        count += 1

print(count)

๐Ÿ’ก ๊ตฌํ˜„ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ

Q1. ์™•์‹ค์˜ ๋‚˜์ดํŠธ

์™•์‹ค ์ •์›์€ ์ฒด์ŠคํŒ๊ณผ ๊ฐ™์€ 8*8์ขŒํ‘œ ํ‰๋ฉด์ด๋‹ค. ์™•์‹ค ์ •์›์˜ ํŠน์ •ํ•œ ํ•œ ์นธ์— ๋‚˜์ดํŠธ๊ฐ€ ์„œ์žˆ๋‹ค.  ๋‚˜์ดํŠธ๋Š” ์ด๋™ํ• ๋•Œ L์ž ํ˜•ํƒœ๋กœ๋งŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ •์› ๋ฐ–์œผ๋กœ๋Š” ๋‚˜๊ฐˆ ์ˆ˜ ์—†๋‹ค. ๋‚˜์ดํŠธ๋Š” ํŠน์ •ํ•œ ์œ„์น˜์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ 2๊ฐ€์ง€ ๊ฒฝ์šฐ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.

1) ์ˆ˜ํ‰์œผ๋กœ ๋‘์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜์ง์œผ๋กœ ํ•œ์นธ ์ด๋™

2) ์ˆ˜์ง์œผ๋กœ ๋‘์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜ํ‰์œผ๋กœ ํ•œ์นธ ์ด๋™

 

์ด์ฒ˜๋Ÿผ 8*8์ขŒํ‘œ ํ‰๋ฉด์ƒ์—์„œ ๋‚˜์ดํŠธ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ด๋•Œ ์™•์‹ค์˜ ์ •์›์—์„œ ํ–‰ ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” 1๋ถ€ํ„ฐ 8๋กœ ํ‘œํ˜„ํ•˜๋ฉฐ, ์—ด ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” a๋ถ€ํ„ฐ h๋กœ ํ‘œํ˜„ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋งŒ์•ฝ ๋‚˜์ดํŠธ๊ฐ€ a1์— ์žˆ์„ ๋•Œ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” c2,b3 ๋‘๊ฐ€์ง€ ์ด๋‹ค. c2์— ์œ„์น˜ํ•ด ์žˆ๋‹ค๋ฉด ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” 6๊ฐ€์ง€ ์ด๋‹ค.

 

*์ž…๋ ฅ์กฐ๊ฑด

- ์ฒซ์งธ์ค„์— 8*8 ์ขŒํ‘œํ‰๋ฉด ์ƒ์—์„œ ํ˜„์žฌ ๋‚˜์ดํŠธ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์˜ ์ขŒํ‘œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ๋œ๋‹ค. ์ž…๋ ฅ๋ฌธ์ž๋Š” a1์ฒ˜๋Ÿผ ์—ด๊ณผ ํ–‰์œผ๋กœ ์ด๋ค„์ง„๋‹ค.

*์ถœ๋ ฅ ์กฐ๊ฑด

- ์ฒซ์งธ ์ค„์— ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค.

 

*์ž…๋ ฅ ์˜ˆ์‹œ

a1

*์ถœ๋ ฅ ์˜ˆ์‹œ

2

 

[๋ฌธ์ œ ์•„์ด๋””์–ด]

 ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฌธ์ œ์œ ํ˜•์ด๋‹ค. ์ƒํ•˜์ขŒ์šฐ์™€ ๋น„์Šทํ•œ ๋ฌธ์ œ์ธ๋ฐ, ์ขŒํ‘œ์„ค์ •์—์„œ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

์•„์Šคํ‚ค ์ฝ”๋“œ๋กœ 'a'๋Š” 97 ์ด๊ณ  'z'๋Š” 122์ž„์„ ์•Œ์•„๋‘์ž.

 

[์ฝ”๋“œ]

position = input()

# ์ด๋™๋ฐฉํ–ฅ ์ •์˜
move_col = [2, 2, -2, -2, 1, 1, -1, -1]
move_row = [1, -1, 1, -1, 2, -2, 2, -2]

# ์ด๋™ ๊ฐ€๋Šฅํ•œ ๋ฐฉํ–ฅ์˜ ๊ฐฏ์ˆ˜ ๊ตฌํ•˜๊ธฐ
count = 0
for i in range(len(move_col)):
  next_col = ord(position[0]) + move_col[i]
  next_row = int(position[1]) + move_row[i]

  # ํ•ด๋‹น ๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ ๊ฐ€๋Šฅ ์—ฌ๋ถ€
  if ord('a')<=next_col<=ord('h') and 1<=next_row<=8:
    count += 1

print(count)

Q2. ๋ฌธ์ž์—ด ์žฌ์ •๋ ฌ

์•ŒํŒŒ๋ฉง ๋Œ€๋ฌธ์ž์™€ ์ˆซ์ž(0~9)๋กœ๋งŒ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์ด๋•Œ ๋ชจ๋“  ์•ŒํŒŒ๋ฉง์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ์ด์–ด์„œ ์ถœ๋ ฅํ•œ ๋’ค์— ๊ทธ ๋’ค์— ๋ชจ๋“  ์ˆซ์ž๋ฅผ ๋”ํ•œ ๊ฐ’์„ ์ด์–ด์„œ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

 

*์ž…๋ ฅ์กฐ๊ฑด

- ์ฒซ์งธ์ค„์— ํ•˜๋‚˜์˜ ๋ฌธ์ž์—ด s๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค,(1<=S์˜ ๊ธธ์ด<=10,000)

*์ถœ๋ ฅ ์กฐ๊ฑด

- ์ฒซ์งธ ์ค„์— ๋ฌธ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ์ •๋‹ต์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

 

*์ž…๋ ฅ ์˜ˆ์‹œ

K1KA5CB7

*์ถœ๋ ฅ ์˜ˆ์‹œ

ABCKK13

 

[๋ฌธ์ œ ์•„์ด๋””์–ด]

 ํŒŒ์ด์ฌ์—๋Š” ๋ฌธ์ž์—ด ๊ตฌ์„ฑ์ด ์•ŒํŒŒ๋ฒณ์ธ์ง€ ํ™•์ธํ•ด์ฃผ๋Š” isalpha()๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

์ฐธ๊ณ ๋กœ isdigit()๋Š” ์ˆซ์ž ๊ตฌ์„ฑ์ธ์ง€๋ฅผ ํ™•์ธํ•ด์ฃผ๋ฉฐ, isalnum()์€ ์ˆซ์ž ํ˜น์€ ์•ŒํŒŒ๋ฒณ์ธ์ง€๋ฅผ ํ™•์ธํ•ด์ค€๋‹ค.

 

[์ฝ”๋“œ]

string = input()

alpha = []
number = 0

for s in string:
  if s.isalpha():
    alpha.append(s)
  # ๋ชจ๋“  ์ˆซ์ž๋Š” ๋”ํ•œ๋‹ค
  else:
    number += int(s)

# ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
alpha.sort()

print( "".join(alpha) + str(number))