반응형
문자열과 관련된 여러가지 함수들을 알아보는 문제이다.
< 나의 코드 >
import sys
S = sys.stdin.readline().rstrip().lower()
S_set = list(set(S))
ans = []
for i in S_set:
count = S.count(i)
ans.append(count)
if ans.count(max(ans)) >= 2:
print("?")
else:
print(S_set[(ans.index(max(ans)))].upper())
< 시행착오 >
for문 사용 미숙
문자열관련 함수들을 많이 알지 못했음
< 해결방안 >
for문을 돌릴때 i가 꼭 숫자가 아닌 문자열 리스트로 루프를 돌릴 수 있다는 것을 이 문제를 풀면서 알게 되었다.
문자열관 관련된 set(), count(), index() 함수의 사용법을 알게 되었다.
★ 추신
이 문제를 풀면서 많이 좌절(?)했다... 문제를 처음 읽었을 때, 문제가 쉽다고 느껴져 자신있게 vsc로 넘어갔는데... 세상에나 for문 부터 막혔다. (ㅋㅋ) 지금까지 문제를 풀면서 i가 숫자인 for문을 사용했었는데, 이런 방법도 배우게 되었다. 문자열 알고리즘도 중요한 만큼 더욱더 열심히 공부해야겠다!!
반응형
'알고리즘 공부' 카테고리의 다른 글
[파이썬] 백준 2908 - 상수 (2) | 2021.03.07 |
---|---|
[파이썬] 백준 1152 - 단어의 개수 (0) | 2021.03.06 |
[파이썬] 백준 10828 - 스택 (0) | 2021.03.05 |
[파이썬] 백준 1110 - 더하기 사이클 (0) | 2021.03.04 |
백준 알고리즘 공부 및 요즘 근황..! (※서론주의) (0) | 2021.03.03 |