본문 바로가기

전체 글

(144)
알고리즘 주간 #9 그룹 단어 체커 (미완) 처음에 여러 줄의 입력을 어떻게 구현할지를 생각하다가 바로 답안을 확인한 문제이다. 그런데 로직조차 파악이 안된다. 진행상황표에다 X표기하고 넘어가겠다.
알고리즘 주간 #8 크로아티아 알파벳(미완) 로직조차 떠오르지 않아 바로 답안을 확인하였다. 크로아티아 알파벳을 미리 지정하여 입력된 문자열에서 그것을 찾아내어 *로 변환한 후 문자열의 전체 길이를 구해주면 되는 것이다. 알파벳을 지정할 때는 리스트를 활용하며 for문과 .replace()를 통해 * 변환을 한다. 마지막으로 len() 메서드로 문자열의 길이를 출력하면 된다. 추후 혼자서 코딩할 것을 기약하며 다음으로 넘어가겠다.
알고리즘 주간 #7 단어공부 (미완) 이 문제 역시 답안을 확인하였다. 로직을 어떻게 구현할지 도무지 떠오르는게 없었기 때문이다. 코드를 완전하게 해독하지는 못하였지만, 다음과 같은 사실을 배울 수 있었다. 1. input().upper() : 입력한 값을 대문자로 바꿔주는 메서드. 2. 집합은 중복을 허용하지 않기 때문에 중복을 제거한 list를 만들기 위해서 list(set( ))을 활용하면 됨. 3. list.count(x): list의 x의 갯수를 세는 것. 4. max(list): list의 가장 많은 요소를 세는 것.
알고리즘 주간 #6 셀프 넘버 (미완) 로직만 세우고 실제 코딩으로 이어지지는 못했다. 그 로직이란, d(n) 함수를 구현해서 10000이하의 양의 정수에서 d(n)을 제외한 값들을 한줄에 하나씩 출력시킨다는 것이다. 구글링을 통해 찾은 다른 분의 답안을 찾아보니 로직은 같았다. 다만, 1. set(집합)을 활용했다. 1-1. sorted() 메서드를 활용했다. 2. Self Number가 아닌 값을 구하기 위해 이중 for문을 활용했다. 왜 집합을 활용했을까 생각해보니, 전체 범위에서 Non-Self Number를 빼줄 때 차집합을 활용하기 위해 그렇게 하지 않았나 싶다.
알고리즘 주간 #5 평균은 넘겠지 (미완) n = input() n1, a, b, c, d, e = input().split() n2, a2, b2, c2, d2, e2, f2, g2 = input().split() n3, a3, b3, c3 = input().split() n4, a4, b4, c4 = input().split() n5, a5, b5, c5, d5, e5, f5, g5, h5, i5 = input().split() avg1 = int(a) + int(b) + int(c) + int(d) + int(e) // int(n1) avg2 = int(a2) + int(b2) + int(c2) + int(d2) + int(e2) + int(f2) + int(g2) // int(n2) avg3 = int(a3) + int(b3) + int(..
알고리즘 주간 #4 더하기사이클 (미완) N = input() if int(N) < 10: N = '0' + N add = str(sum([int(d) for d in N]))[-1] N = N[1] + add 위는 이때까지 진행한 코드이다. 창길님 말씀대로 두자리 수를 쪼개는 것을 프로그래밍적이 아니라 수학적으로 구현하여 다시 시도해보아야겠다. 이때 2번 문제가 하나의 연습 대상이 될 수 있다. 번외로 박현준 멘토님의 특강을 토대로 학습법도 신경을 쓰며 진행해갈 것이다.
알고리즘 주간 #3 알람시계 H, M = input().split() H = int(H) M = int(M) if H == 0 and M < 45: print(23, M + 15) elif 0 < H < 24 and M < 45: print(H - 1, M + 15) else: print(H, M - 45) H = 0 and 0 < M < 45 인 경우를 고려해주지 않아 수정하였다.
알고리즘 주간 #2 곱셈 A = input() B = input() A = int(A) list = [int(d) for d in str(B)] list.reverse() for d in list: print(d * A) print(A*int(B)) 1. str형의 int를 각 자리의 숫자로 쪼개는 것을 구글링한 것을 활용했다. 2. .reverse()로 리스트를 역순 배열하는 것을 구글링을 통해 알았다.