dfs를 사용해서 풀었다
sqrt 함수를 쓰면 런타임 에러가 떠서 이진 탐색을 써야한다
이진탐색을 떠올릴 수만 있으면 풀이법은 간단하다.
역시 이진탐색임을 알고 풀면 문제가 쉽다. 유의할 점은 (y*100)//x
https://www.acmicpc.net/problem/1654런타임 에러 때문에 하루를 고생한 문제다. 먼저 런타임 에러가 났던 코드는 런타임 에러가 난 이유는 total+=i//mid 라는 식을 세웠으므로 반드시 mid가 0이 되면 안되는 조건이 있어야
https://www.acmicpc.net/problem/10816이분 탐색을 사용하는 문제라고 생각이 들어 반복문을 사용해 이분 탐색을 했지만...시간 초과가 나버렸다. 위 코드가 시간 초과가 난 코드다. while문을 써서 시간 초과가 난 것인데 정확히
https://www.acmicpc.net/problem/14501dp 개념을 입문하기에 참 적합한 문제 같다. 일단 점화식을 잘 세우는 것 부터가 문제였다...d라는 리스트를 활용해 N일까지 벌 수 있는 최대수익을 저장하도록 했는데,di는 di-1과 di 중
백준9095번 바로가기정말 dp스럽게 접근해야 하는 문제, 점화식을 잘 세우는게 문제의 전부다.이전의 값을 어떻게 활용할 것인지 고민하며 문제를 풀었다.1,2,3을 더해 i값을 표현하는 경우의 합을 구하려면 (1,2,3을 더해 i-1값을 표현하는 경우의 합)\+(1,2
11726번 바로가기그림을 그려보면 수열이 피보나치 형태를 이루고 있음을 알 수 있다
문제 바로가기python 3와 pypy3 모두 메모리 초과가 났던 코드이다. maxheap를 사용했는데 이 경우 힙의 길이가 너무 길어져 배열이 상당히 커지므로 메모리 초과가 난 것이다.힙의 크기를 일정하게 유지하기 위해 첫 배열 길이인 n에서 새로운 숫자가 추가될 때
링크텍스트bfs로 푼 버전dfs로 푼 버전
https://www.acmicpc.net/problem/15649백트래킹 입문용으로 적합한 문제
https://www.acmicpc.net/problem/15649이전 포스팅과 달리 itertools 라이브러리를 활용해 백트래킹을 더 쉽게 해결했다
https://www.acmicpc.net/problem/1427총 3가지의 풀이법을 사용해 해결했다
문제 링크집과 치킨집의 위치정보를 모두 리스트에 넣는다.치킨집 개수에서 중복 없이 m개를 추출하는 모든 조합의 수를 구한다.모든 치킨집 조합에 대해 각 집과의 최소 거리를 구해 갱신하고, 이를 모두 더한 후 각 조합 별 최소 거리를 한 리스트에 담는다.최종 리스트에서