목차
TIL
- 백준 1316
- 프로그래머스 12917
TIL
코딩 테스트가 1주일 남았기 때문에, 기존의 자료구조 강의를 일정 조정을 했다. 자소서 준비에 집중하고, 파이썬 알고리즘 강의를 수강해야겠다. 하루에 대부분의 시간을 코딩 테스트 준비로 보내야 겠다.
백준 1316
https://www.acmicpc.net/problem/1316
if문이 많아 지저분해 보이지만, 나름 분기를 조정을 하려고 flag, not_group, _double 과 같이 bool형태로 사용하였다. for문안에 두 개의 for문이 돌며 그 for문안에서도 하나의 for문이 돌게 코드를 작성했다. index for문은 group 인지 아닌지 검사해주는 for문이다.
n = int(input())
_str = [input() for _ in range(n)]
flag = 0
for j in range(len(_str)):
tmp = []
group = []
for i in range(len(_str[j])):
if _str[j][i] not in tmp:
tmp.append(_str[j][i])
flag = 0
not_group = 0
_double = 1
for i in range(len(_str[j])):
if flag == 1:
for index in range(len(group)):
if _str[j][i] == group[index]:
if i > 0:
if _str[j][i] != _str[j][i - 1]:
not_group = 1
if _str[j][i] in tmp:
flag = 1
group.append(_str[j][i])
if i > 0:
if _str[j][i - 1] == _str[j][i]:
_double = 0
if not_group:
n -= 1
print(n)
문제 풀이 시간 1시간 내외
프로그래머스 12917
https://programmers.co.kr/learn/courses/30/lessons/12917
처음에 생각했었던 문제는 아스키코드로 싹다 정렬을 해야하는 줄 알았다. return값을 보니 그냥 역순 출력이었다. 간단한 문제였지만 오히려 꼬아서 생각해서 문제 풀이하는데 시간 소요가 더 걸린 것 같다. 출제가가 의도한 대로 문제를 풀이하려 노력하자.
s = input()
def solution(s):
answer = ''
tmp_list = []
for _str in s:
tmp_list.append(_str)
tmp_list.sort(reverse=True)
for _one_str in tmp_list:
answer += _one_str
return answer
print(solution(s))
문제 풀이 시간 30분 내외
'Today I Learned' 카테고리의 다른 글
[TIL] 백준 15552, 프로그래머스 12935 [21-11-01] (0) | 2021.11.01 |
---|---|
[TIL] 백준 1110 [21-10-31] (0) | 2021.10.31 |
[TIL] 백준 2576, 백준 11021 [21-10-29] (0) | 2021.10.29 |
[TIL] 백준 11943, 백준 10101, 백준 14681 [21-10-28] (0) | 2021.10.28 |
[TIL] 자료구조 / 연결 리스트의 개념적인 이해, 쿠버네티스 APIs and Access RBAC, 백준 2720 [21-10-27] (0) | 2021.10.27 |