[Silver I] 1283 - λ¨μΆν€ μ§μ
λ¬Έμ
νκΈ νλ‘κ·Έλ¨μ λ©λ΄μλ μ΄ Nκ°μ μ΅μ μ΄ μλ€. κ° μ΅μ λ€μ ν κ° λλ μ¬λ¬ κ°μ λ¨μ΄λ‘ μ΅μ μ κΈ°λ₯μ μ€λͺ νμ¬ λμλ€. κ·Έλ¦¬κ³ μ°λ¦¬λ μμμλΆν° μ°¨λ‘λλ‘ κ° μ΅μ μ λ¨μΆν€λ₯Ό μλ―Ένλ λν μνλ²³μ μ§μ νκΈ°λ‘ νμλ€. λ¨μΆν€λ₯Ό μ§μ νλ λ²μ μλμ μμλ₯Ό λ°λ₯Έλ€.
- λ¨Όμ νλμ μ΅μ μ λν΄ μΌμͺ½μμλΆν° μ€λ₯Έμͺ½ μμλ‘ λ¨μ΄μ 첫 κΈμκ° μ΄λ―Έ λ¨μΆν€λ‘ μ§μ λμλμ§ μ΄ν΄λ³Έλ€. λ§μ½ λ¨μΆν€λ‘ μμ§ μ§μ μ΄ μ λμ΄μλ€λ©΄ κ·Έ μνλ²³μ λ¨μΆν€λ‘ μ§μ νλ€.
- λ§μ½ λͺ¨λ λ¨μ΄μ 첫 κΈμκ° μ΄λ―Έ μ§μ μ΄ λμ΄μλ€λ©΄ μΌμͺ½μμλΆν° μ°¨λ‘λλ‘ μνλ²³μ 보면μ λ¨μΆν€λ‘ μ§μ μ λ κ²μ΄ μλ€λ©΄ λ¨μΆν€λ‘ μ§μ νλ€.
- μ΄λ ν κ²λ λ¨μΆν€λ‘ μ§μ ν μ μλ€λ©΄ κ·Έλ₯ λλλ©° λμλ¬Έμλ₯Ό ꡬλΆμΉ μλλ€.
- μμ κ·μΉμ 첫 λ²μ§Έ μ΅μ λΆν° Nλ²μ§Έ μ΅μ κΉμ§ μ°¨λ‘λλ‘ μ μ©νλ€.
μ λ ₯
첫째 μ€μ μ΅μ μ κ°μ N(1 ≤ N ≤ 30)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€λΆν° N+1λ²μ§Έ μ€κΉμ§ κ° μ€μ μ΅μ μ λνλ΄λ λ¬Έμμ΄μ΄ μ λ ₯λλλ° νλμ μ΅μ μ 5κ° μ΄νμ λ¨μ΄λ‘ ννλλ©°, κ° λ¨μ΄ μμ 10κ° μ΄νμ μνλ²³μΌλ‘ ννλλ€. λ¨μ΄λ 곡백 ν μΉΈμΌλ‘ ꡬλΆλμ΄μ Έ μλ€.
μΆλ ₯
Nκ°μ μ€μ κ° μ΅μ μ μΆλ ₯νλλ° λ¨μΆν€λ‘ μ§μ λ μνλ²³μ μ’μ°μ [] κ΄νΈλ₯Ό μμμ νννλ€.
μμ μ λ ₯ 1 볡μ¬
5
New
Open
Save
Save As
Save All
μμ μΆλ ₯ 1 볡μ¬
[N]ew
[O]pen
[S]ave
Save [A]s
Sa[v]e All
μμ μ λ ₯ 2 볡μ¬
8
New window
New file
Copy
Undo
Format
Font
Cut
Paste
μμ μΆλ ₯ 2 볡μ¬
[N]ew window
New [f]ile
[C]opy
[U]ndo
F[o]rmat
Fon[t]
Cut
[P]aste
# νμ΄ λ°©λ²
μλ‘μ΄ μμ΄λμ΄λ₯Ό λ μ¬λ¦΄ 건 μμκ³ κ·Έλ₯ νλμ© κ΅¬ννλ©΄ λλ λ¬Έμ
flagλ‘ t/f μ΄λ°κ±° μ€μ νλκ² μ΄μ§ ν·κ°λ Έμ
input_list μ체λ₯Ό λ°κΏ μκ°μ μ€μ λ‘λ λͺ»νκ³ μ 리μ€νΈλ₯Ό μ λ ₯ λ°μκΉ νμλλ° λ¨μ μ½λλ₯Ό μ°Έκ³ νλ€.
# μ½λ1 - good
μ½λ2λ‘ μ²μ ν΅κ³Όνμ§λ§, enumerate ν¨μμ μ΅μν΄μ§ μ΄νλ‘λ λ λμμ§ νμ΄λ₯Ό ꡬνν μ μμλ€.
μ¬μ€μ λ¨μ΄λ³λ‘ μ μ₯νλκ² λ λ§μ΄ λλκΉ (sys.stdin.readline.split())
# 2025-05-02 14:44-15:13
import sys
sys.stdin = open("input.txt","r")
n = int(sys.stdin.readline().strip())
input_list = [list(sys.stdin.readline().split()) for _ in range(n)]
key_list = []
def return_key(words):
# μΌμͺ½μμλΆν° μ€λ₯Έμͺ½ μμλ‘ λ¨μ΄μ 첫 κΈμκ° μ΄λ―Έ λ¨μΆν€λ‘ μ§μ λμλμ§
for (i,word) in enumerate(words):
if word[0].upper() not in key_list:
key_list.append(word[0].upper())
word = '[' + word[0] + ']' + word[1:]
words[i] = word
return
# μ΄λ ν κ²λ λ¨μΆν€λ‘ μ§μ ν μ μλ€λ©΄ κ·Έλ₯ λλλ©° λμλ¬Έμλ₯Ό ꡬλΆμΉ μλλ€.
for (i, word) in enumerate(words):
for (j, w) in enumerate(word):
if w.upper() not in key_list:
key_list.append(w.upper())
word = word[:j] + '[' + word[j] + ']' + word[j+1:]
words[i] = word
return
for i in range(n):
return_key(input_list[i])
print(*input_list[i],sep=' ')
# μ½λ2 -- μ°Έκ³
μ²μμλ sys.stdin.readline().split()μΌλ‘ ν΄μ λ¨μ΄λ³λ‘ μ λ ₯μ λ°μμλλ°
forλ¬Έμ μ΄μ€μΌλ‘ λλ κ³Όμ μ΄ μ΄μ§ ν·κ°λ Έλ€. strip()λ‘ μ λ ₯ λ°μΌλ λ μ½λκ° μ½κ² νλ Έλ κ² κ°κΈ°λ νκ±Έ
μ²μμ words[i] != ' ' μ΄ λΆλΆμ κΉλ¨Ήμ΄μ λ΅μ΄ νλ Έμμ
λ°λ‘)
μ λ ₯
2
aa aa
aa aa
μ λ΅
[a]a aa
aa aa
λμ λ΅
[a]a aa
aa[ ]aa
# 2025-05-02 14:44-15:13
import sys
sys.stdin = open("input.txt","r")
n = int(sys.stdin.readline().strip())
input_list = [list(sys.stdin.readline().strip()) for _ in range(n)]
key_list = []
def return_key(words):
# μΌμͺ½μμλΆν° μ€λ₯Έμͺ½ μμλ‘ λ¨μ΄μ 첫 κΈμκ° μ΄λ―Έ λ¨μΆν€λ‘ μ§μ λμλμ§
if words[0].upper() not in key_list:
key_list.append(words[0].upper())
words[0] = '[' + words[0] + ']'
return
for i in range(1, len(words)):
if words[i-1] == ' ' and words[i].upper() not in key_list:
key_list.append(words[i].upper())
words[i] = '[' + words[i] + ']'
return
# μ΄λ ν κ²λ λ¨μΆν€λ‘ μ§μ ν μ μλ€λ©΄ κ·Έλ₯ λλλ©° λμλ¬Έμλ₯Ό ꡬλΆμΉ μλλ€.
for i in range(1, len(words)):
if words[i] != ' ' and words[i].upper() not in key_list:
key_list.append(words[i].upper())
words[i] = '[' + words[i] + ']'
return
for i in range(n):
return_key(input_list[i])
print(*input_list[i],sep='')
# μ°Έκ³ (νλ¦° μ½λ- 첫μλ)
μ νλ¦°μ§ λͺ¨λ₯΄κ² μ.. λͺ¨λ μμ μ λν λ΅μ λ§λλ°
# 2025-05-01 11:14 - 55
import sys
sys.stdin = open("input.txt","r")
n = int(sys.stdin.readline().strip())
string_list = [sys.stdin.readline().split() for _ in range(n)]
key = []
for string in string_list:
flag = False
for i in range(len(string)):
# λ¨μ΄μ 첫 κΈμκ° μ΄λ―Έ λ¨μΆν€? -> μ΄λ―Έ μ§μ μ λ€μ λ¨μ΄
if string[i][0].upper() not in key and string[i][0].lower() not in key:
key.append(string[i][0])
flag = True
break
if not flag:
for i in range(len(string)):
# κ·Έ μ΄λ ν κ²λ μ§μ ν μ μλ€λ©΄ λμλ¬Έμ κ΅¬λ³ X
for s in string[i]:
if s.upper() not in key and s.lower() not in key:
key.append(s)
flag = True
break
if flag:
break
if not flag:
key.append(None)
for i in range(len(string_list)):
flag = False
for string in string_list[i]:
for s in string:
if not flag and s == key[i]:
print(f'[{s}]',end='')
flag = True
else:
print(s,end='')
print(end=' ')
print()