본문 바로가기

전체 글

(144)
알고리즘 주간 #17 ACM 호텔 (미완) 자료구조에 대한 이해가 필요하지 않나 싶어서 답안을 확인한 문제이다. 첫 줄에 입력한 int값만큼의 줄에 input을 추가로 하기 위해서는 for _ in range(int(input()))을 활용하면 된다. 그리고 호수를 구현하는 로직 자체는 단순하다. 몫과 나머지를 활용하여 호수의 첫째자리와 나머지 자리를 나타내면 된다. 추후 다시 돌아와서 답안 참조하지 않고 코딩하기로 하겠다.
알고리즘 주간 #16 최대공약수와 최대공배수 (미완) 재귀니, 유클리드 호제법이니 필요한 내용에 대해 학습을 하게 해준 문제이다. GCD를 구하는 gcd() 함수의 경우 답안을 참조하였지만 여전히 이해가 되지 않아 질문글을 올려둔 상태이다. gcd()함수만 구하면 lcm() 함수는 거기서 파생되며 유클리드 호제법을 통해 결괏값을 출력해주면 된다.
알고리즘 주간 #15 약수 (미완) 여러 줄에 걸친 입력을 하는 것이 문제가 되고 있다. input()을 여러 줄에 걸쳐서 하면 되는 것이다! 복사 붙여넣기가 아니라 직접 입력을 하는 경우 엔터로 다음 줄로 간다고 생각하라. 그리고 문제 자체에 대한 수학적 로직의 경우 추후 다시 돌아와서 구현하도록 하자.
알고리즘 주간 #14 달팽이는 올라가고 싶다(미완) 답안을 확인했다. 나의 로직의 문제는 바로 소수점 아래 숫자를 메서드로 처리하려고 했단 것이다. 그게 안되면 if-else문으로 구현할 수 있어야 된다. 그리고 map() 메서드를 input 시에 활용할 수 있어야 한다.
알고리즘 주간 #13 영화감독 숌 (미완) Brute Force를 활용하는 문제이다. 답안을 확인했는데 while문에 대한 이해가 부족해서인지 BFS에 대한 이해가 부족해서인지 해독이 바로 되지는 않았다. BFS와 거기서 쓰이는 큐 개념을 이해하려 박현준 튜터의 알고리즘 강의를 들어보았지만 여전했다. 일단 계속 진행하며 알고리즘과 파이썬 문법의 기초실력을 길러야겠단 생각을 했다.
알고리즘 주간 #12 베르트랑 공준(미완) 이 문제의 경우 로직을 짜는데 '에라토스테네스의 체'라는 수학적 개념을 필요로 한다. 추후 다시 돌아와 그 개념에 대해 학습한 다음 풀이하겠다.
알고리즘 주간 #11 Fly me to the Alpha Centauri (미완) 여러 줄에 걸쳐 input하는 것부터 코딩이 안되어서 답안을 확인하였다. 이때 map() 메서드를 활용해주어야 하는 것을 알았다. 또 답안에서는 삼변수를 정의하여서 while문을 활용했다. 하지만 석연치 않은 점도 있었다. 예를 들어 if문에서 왜 2의 배수번째의 이동마다 움직인 거리를 1씩 더하느냐 하는 것이다. 하지만 전반적인 로직의 구조를 확인하였다. 추후 다시 돌아와서 그땐 나의 로직으로 코딩해보겠다.
알고리즘 주간 #10 설탕 배달 (미완) 답안을 확인한 문제이다. 코드의 로직을 파악하는데 중점을 뒀다. 그 로직의 중심 논리는 5kg 봉지를 최대한 활용하는 것이다. 따라서 먼저 if문을 활용해서 설탕 무게가 5의 배수이면 바로 5kg 봉지의 수를 출력한다. 그게 아니라면 5의 배수가 될 때까지 while문을 활용하여 전체 무게에서 3씩 빼준다. 이때 3씩 빼줄때마다 미리 지정해둔 봉지 변수에 1씩 더해준다. else문을 활용해 -1을 출력한다. 추후 다시 돌아와 코딩을 할 것이다.