CS42 [이코테] DFS, BFS - 음료수 얼려먹기 오랜만에 포스팅한다... 왜냐? DFS BFS 개념도 이해하는데 시간이 걸렸기 때문 한 번도 시도해보거나 연습해본 사고의 패턴이 아니기 때문에 (누가 일상생활에서 저렇게 생각해요;) 좀 걸렸다 잡설이 긴 이유? 그것은 이번 음료수 얼려먹기도 손도 못 대고 결국 정답을 봤기 때문이지 1. 내 풀이 진짜 처참해서 보여줄 수 없음... graph로 input 받는 것도 실패함 1-1. 풀이 도중 생각 1) 0을 기준으로 탐색하고, 종료되는 한 세트를 아이스크림 1개로 카운트하면 될 것 같다 2) 0을 기준으로 탐색하고 모든 노드에 대해서 탐색을 시작하는 것으로 짜면 될 것 같은데 그러면 아이스크림을 중복해서 세는 위험이 있지 않을까? 이것을 어떻게 처리해줄 수 있을까? 3) 방문처리를 어떻게 해줄 수 있을까?.. 2023. 2. 2. [이코테] 구현 - 문자열 압축 ㅋㅋㅋㅋㅋ 그냥 못풀었음; 피곤한 것도 있지만 이걸 어떻게 차례대로 검사할까 생각이 안 나는... 결국 15분만에 GG치고 정답 봤음. 나중에 다시 풀어봐야지 1. 내 풀이 def solution(s): answer = 0 for i in len(s): for k in len(s): s[k] return answer 이정도면 그냥 손도 못 댔다고 하는게 좋겠군 1-1. 풀이 도중 생각 1) 최소 2중 for문을 돌려서 1배수라면 1, 2, 3, 4... 2배수라면 2, 4, 6... 구간을 검사하는 알고리즘이 필요할 것 같다 2) 압축 결과 중 가장 짧은 것을 골라야 하니 이전 결과와 지금 결과를 비교하거나, 전체 결과들을 저장해서 가장 짧은 것을 출력\ 3) 입력으로 주어지는 문자열이 짧으니 조금 비효.. 2023. 1. 29. [이코테] 구현 - 문자열 재정렬 어제 문제 하나 풀었다고 좋아하더니, 오늘은 못 풀었다. 1. 내 풀이 S = input() data_list = sorted(S) result = 0 tmp = [] for data in data_list: if int(data) == True: result += int(data) print("result: ", result) else: tmp.append(data) print("tmp: ", tmp) 1-1. 풀이 도중 생각 1) 입력된값이 숫자인지는 어떻게 감지할 수 있을까? 검사했을 때 문자인거는 문자인거는 어떻게 알 수 있을까? - int(), str()를 쓰는 방법은 아닌 것 같은데... (그러면 에러나니까) 2) 예외처리에 대해서 알아야 풀 수 있는 문제일까? 2. 정답 data = inpu.. 2023. 1. 28. [이코테] 구현 - 럭키 스트레이트 오... 이상한 거에서 살짝 시간을 잡아먹긴했지만 그래도 풀었다 1. 내 풀이 n = input() point = len(n) // 2 front = 0 back = 0 for i in range(point): front += int(n[i]) back += int(n[-i-1]) if front == back: print('LUCKY') else: print('READY') 1-1. 풀이 도중 생각 1) split()으로 내가 원하는 인덱스 지점에서 쪼개는 방법이 없을까? 2) 쪼개서 각각을 리스트에 넣는 방법도 있겠지만 그건 모르겠고, 문자열 인덱싱으로 반복적으로 더하는 것으로 짜야지 2. 정답 n = input() length = len(n) summary = 0 for i in range(leng.. 2023. 1. 27. 이전 1 ··· 7 8 9 10 11 다음