[c++/알고리즘] 프로그래머스 더맵게(heap)

heap->priority_queue를 사용하여 풀이한다. https://programmers.co.kr/learn/courses/30/lessons/42626

2021년 8월 20일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 프로그래머스 거리두기확인하기 (정확도 88.8-> 풀었다..!)

https://programmers.co.kr/learn/courses/30/lessons/81302 조건 접근 'P'에서 1만큼 위,아래,왼,오로 이동하였을 경우 'P'이면 그 강의실은 거리두기 위반 'P'에서 1만큼 위,아래,왼,오로 이동하였을 경우 'O'이고, 다시 'O'인 위치에서 1만큼 위,아래,왼,오로 이동하였을 경우 'P'인 경우 맨해튼거리가 2 이하이므로 강의실은 거리두기 위반 풀고나니 많이 지저분하다.

2021년 8월 18일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 프로그래머스 문자열내림차순으로배치하기

참고 : http://www.soen.kr/lecture/ccpp/cpp4/39-3-3.htm

2021년 8월 12일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 프로그래머스 3진법뒤집기

10진수로 다시 변환하기 위해 pow함수도 쓰고.. 아둥바둥 했으나.. 매우 간단한 풀이가 있었다.. 머리 좀 잘쓰자.. >참고한 풀이

2021년 8월 12일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 프로그래머스 타겟넘버

2021년 8월 10일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 1012 유기농배추 : dfs

문제 풀이 출발점이 따로 존재하지 않아서 BFS보다 DFS가 더 적합하다고 생각하여 DFS로 접근하였다. -> 다른 블로그보니 BFS로 푼 경우가 꽤 된다. 한칸에 지렁이가 살고 있으면 왼/오/위/아래로 인접한 다른 배추로 이동할 수 있어 지렁이가 필요없다. 배추의 위치는 x : 0<=x<M ,y : 0<=y<N 이 주어진다. ![](https://images.velog.io/images/myeongs07/post/7a69a7d2-e399-49ae-ba67-d90da309f0d0/7821F5A1-240B-423B-BE

2021년 8월 6일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘]백준 7562 나이트의 이동

-- 문제를 더 정확하게 읽는다면 더 빨리 풀 수 있다고 생각! 꼼꼼하게 하자! 배열 초기화

2021년 8월 5일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 1260 DFS와BFS

무려 2년 전에 풀어보다가 못풀어서 실패한 문제였다..ㅎㅎ 나의 풀이 >> 다른사람들보니 dfs를 더 간단하게 구현한 사람들이 많다.. dfs 호출, bfs 연습.. ![](https://images.velog.io/images/myeongs07/post/999

2021년 8월 5일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 7576 토마토 : BFS

문제 이해 : 가중치가 모두 같은 경로를 탐색하며 , 최소 일수를 구하는 것이기 때문 -> BFS로 풀이한다. 상자의 크기는 MN // 문제를 똑바로 안읽고 의식의 흐름에 따라 N\M으로 입력받아서.. 시간이 걸렸다. 내가 작성한 코드

2021년 8월 4일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 2178 미로탐색:BFS

최소 칸의 수를 구한다 -> BFS를 사용하여 푼다 시간초과가 떠서 왜이러지 했던 문제... 배열을 입력받을때 시간초과가 났다. N행의 요소가 붙어서 입력으로 주어져서 이를 처음에는 이렇게 각 자릿수를 나누어서 배열에 나누려고 했는데.. 시간초과가 났다. 흠.. 시간복잡도 공부를 해야한다. > 그래서 수정한 코드 한자리씩 입력받아서 배열에 넣는다.

2021년 8월 3일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 2606 바이러스

BFS를 사용한 풀이

2021년 8월 2일
·
0개의 댓글
·

[C++/알고리즘] 송아지 찾기(BFS:상태트리탐색)

현재위치 s와 송아지의 위치 e가 주어진다. 직선의 좌표 점은 1부터 10,000까지 이다. 한 번의 이동시 현 좌표에서 1, -1, 5만큼 이동할 수 있다. 현재위치에서 최소 몇 번의 이동으로 송아지의 위치까지 가는가?

2021년 8월 2일
·
0개의 댓글
·

[c++/알고리즘] 그래프 최단거리 - BFS

그래프 1번 정점에서 각 정점으로 가는 최소 이동 간선수를 구한다. -> 가중치는 모두 같고, 최소 이동 간선수를 구하는 문제이니 BFS를 사용한다.

2021년 8월 2일
·
0개의 댓글
·

[c++/알고리즘팁] 1차원배열의 부분합

1차원 배열의 연속된 부분합을 구할때, 1~N까지의 수 중, k개씩 더하는 부분집합을 더하라. 이런 문제를 풀때 보통 위와 같이 for문을 사용하는 경우가 많을 것이다. 하지만 이것은 숫자가 커지면 시간초과로 오류가 발생된다. => 1차원 배열의 부분합을 구할 때, 시간복잡도를 n으로 구하기

2021년 8월 1일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 프로그래머스 완주하지못한선수

나의 풀이 풀이 검색하다가 알게된 것 C++ STL에는 std::map 과 std::unoredered_map 컨테이너가 있다. 둘다 key를 이용하여 value에 접근할 수 있다. 여기서 map은 Red-Black Tree를 사용해 키의 순서를 유지하므로 탐색 속도에 시간복잡도 O(log n)을 가진다. 반면 unordered_map은 Hash Table을 사용해 키의 순서를 유지하지 않기 때문 탐색속도에 O(1)이상의 시간복잡도를 가진다. 위의 문제는 정렬을 하지 않기 때문 map 보다 unordered_map의 사용이 더욱 적합하다.

2021년 7월 25일
·
0개의 댓글
·

[c++/알고리즘] 프로그래머스 k번째수

나의 코드 백터를 잘라서 임시배열에 넣기 백터 정렬하기 임시배열 값 삭제하기

2021년 7월 25일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 2839 설탕배달

// 못푼 문제 -> 정리해서 내일 다시 풀어보기! 다른 블로그의 풀이를 보니 greedy algorithm 을 사용하여 풀었다. 큰 수(5)를 n번 만큼 이용하여 봉투에 채우는 방법이 봉투를 가장 적게 쓰는 방법니다. 큰 수(5)로 채워지지 않으면 3만큼을 봉투에 담는다. 그리고 난 후 다시 5로 나누어 나머지가 0 인지 확인한다. 이를 반복하여 최적의 해를 찾는다.

2021년 7월 21일
·
0개의 댓글
·
post-thumbnail

[c++/알고리즘] 백준 2869번 달팽이는 올라가고 싶다

풀릴듯 말듯 안풀린 문제 ㅠㅗㅠ 나 수학 정말 못하나봐.. 차근차근 생각해보자. 예제 1을 생각했을때, 하루에 [2만큼 올라가고 정상에 도달하지 못했을 경우, 1만큼 내려가고] 를 반복하며 5에 도달하거나 5보다 더 크게 갔을때의 날짜를 출력하면 된다. -> 2n - 1(n-1) >= 5 -> n = 4 가 정답이 된다. a*n - b(n-1) >= v 인 수식을 계산하면 n >= (v-b)/(a-b)를 출력하면 된다.

2021년 7월 20일
·
0개의 댓글
·