https://www.acmicpc.net/problem/11049 험난했던 시험 기간을 끝내고 다시 돌아온 백준 시간. 오늘 푼 문제는 알고리즘 시간에 배운 행렬곱셈 순서를 실제로 풀어본 문제이다. 현재 학교 알고리즘 과목에서 DP를 배우고 있다. 풀이 방법 우선 행렬의 곱셈 성질에 대해서 알아야 한다. 행렬 A(pq) 와B(qr)를 곱하면 총 연산은p...
https://www.acmicpc.net/problem/3151값이 중복되지 않게 예외 처리를 해줘야 하는데 이 점을 내가 간과해서 꽤나 애를 먹었다.세 수를 합해야 하므로 모든 수를 따지면 $N^3$이므로 시간 초과이다.그러나 두 수를 더하고 0에 수렴하는
이번엔 실질적으로 권한이 있는 유저만 해당 내용을 볼 수 있게끔 해볼 것이다.이블로그를 참고해서 만들었다.먼저 클라이언트에 todo가 보일 수 있게 todo를 저장하는 state를 만들자.이제 todo를 서버에서 읽어와야한다.todo에 userId를 저장한다고 가정하고
https://www.acmicpc.net/problem/12015이진탐색의 사용은 무궁무진하구나...처음엔 엥? 아무리봐도 dp문제인데? 했는데 시간복잡도가 O(N^2)이면 못푸는 문제더라...^^ 아무리봐도 모르겠어서 인터넷 보면서 풀었다..결과 배열을 만
https://www.acmicpc.net/problem/15732 와!! 이분탐색 문제중에 처음으로 보자마자 슥슥 접근하고 바로 구현해냈다.. 사실 규칙이 쉬워서 금방 발견한거긴 하지만..
https://www.acmicpc.net/problem/1939 처음엔 크루스칼 알고리즘밖에 떠오르지 않았다. 가중치의 최댓값을 작고 점점 작게 탐색한다면... 쉽게 할 수 있을 것 같았다. 그러나! 나는 이분 탐색을 공부 중이기때문에, 이분 탐색으로 어케할지 이리저리 고민해봤다... 파라메트릭 서치 문제를 풀고 여러 블로그들을 돌아보니, 이런 종류의 ...
계기 프론트엔드를 개발하다보면 백엔드 api가 없어 개발에 난감한 경우가 있다. 그렇다고 openAPI만 사용하기엔 커스텀할 수 있는 내용이 적어 원하는 기능을 테스트 해보기가 어려운 순간도 있다. 그래서 가짜 api통신이 가능하도록 moke api를 만들려고 한다.
https://www.acmicpc.net/problem/2110나무자르기 문제를 풀고 이진탐색을 좀 집중공략할 필요가 있다고 생각이 들어서 당분간 이진탐색 문제를 집중적으로 풀려고 한다.이 문제의 경우 아까와 비슷한 방식으로 이진탐색 > n번 탐색 의 알고리
https://www.acmicpc.net/problem/2805예전에 class3 에센셜 문제를 다 풀었었는데, 새롭게 한 문제가 생겼길래 풀어봤다.제일 까다로웠던 부분이 나무의 길이가 '넘침'>'적음'>'넘침'으로 갈 때 종료 조건을 어떻게 할까였는데, 생
https://www.acmicpc.net/problem/2143나는 투 포인터를 활용해서 풀었는데, 이진탐색을 사용해서 푼 사람들도 많았다.시간복잡도는 거의 동일하니 편한 방법을 쓰면 될 것 같다. 소요 시간만 놓고 보면 투포인터가 조금 더 빠르게 찍혔는데,
https://www.acmicpc.net/problem/1509 무려 DP를 2번이나 구현해야하는 문제이다. 풀이 과정 팰린드롬 구하기 문자열의 범위(0~len)일때 ,구하려는 범위의 시작을 s, 끝을 e로 두고, 범위는 (e-s+1)라고 하자 범위가 1일때:
https://www.acmicpc.net/problem/9328 알고리즘의 묘미랄까.. 다 풀고 남들의 코드를 보는데 나와 다른 부분이 있어 흥미로웠다. 시작 지점을 구하는 방법 내 방법: 입력을 받으며 테두리일 경우 '.'인 경우 따로 저장 찾은 방법:
https://www.acmicpc.net/problem/1644소수를 구하고 누적합과 투포인터를 사용하면 쉽게 풀 수 있는 문제이다.소수를 효과적으로 구하는 방법을 찾아 보니 에라토스테네스의 체라는 방법이 있었다.에라토스테네스의 체를 활용해 소수를 구한다.n
https://www.acmicpc.net/problem/1202으아아 아직 그리디 문제에 대한 감이 부족한 것 같다. 그리디 문제를 좀 많이 풀어봐야겠다.보석의 무게와 배냥의 무게를 정렬해야겠다는 생각까지는 하였으나, 가치를 어떻게 정렬 해야할지 고민을 제대
https://www.acmicpc.net/problem/1005위상정렬을 이용한 문제이다.도착 위치가 3 일때,{1}->{3} 으로 바로 가는 경우와 {1}->{2}->{3}으로 다른 노드를 거쳐 가는 경우가 존재할 때, 이를 어떻게 해결할지만 조심하면 바로
https://www.acmicpc.net/problem/13460초반에 구슬을 저장할 구조를 따로 만들었다가 낭패를 봤다...설계부터 꼼꼼히 하고 타이핑하는 습관을 가지자.구슬들의 시작위치를 기록하고 큐에 넣는다.bfs를 하며 4방향으로 굴린다.한 번에 한
https://www.acmicpc.net/problem/17472 크루스칼 알고리즘 풀려고 했던건데 bfs 구현하는데 더 오래 걸린.. 해결 과정 bfs를 돌며 섬의 번호를 색칠한다. 입력이 섬을 1,바다를 0으로 주어졌으므로 섬 번호를 1번부터 부여하기 위해
여러개의 노드가 존재할 때, 두 노드를 선택해 같은 그래프의 노드인지 확인하고 합치는 알고리즘두 노드를 합치는 과정위 그림과 같이 루트가 4와1인 두 그래프가 있을 때, 한 그래프로 합치는 과정⇒ 한 그래프의 루트노드를 다른 그래프의 자식으로 넣어줌보통의 경우 부모가