프로그래머스 거리두기 확인하기
카카오 채용연계형 인턴십 문제이다. 2021년 당시에는 풀지도 못한 문제였는데. 2년이 지난 지금, 20분만에 풀었다. 나는 BFS를 이용해 풀었는데, depth를 계산하다가 맨헤튼 거리가 2가 넘어가는 순간 실패로 책정했다. #include #include #include #include // 20 using namespace std; bool visit[5][5]; int mx[4] = {0, 0, -1, 1}; int my[4] = {1, -1, 0, 0}; bool bfs(vector& place, int sx, int sy) { queue que; que.push({{sx, sy}, 0}); visit[sx][sy] = true; while(!que.empty()) { int x = que.fr..
2023. 10. 9.
프로그래머스 순위 검색 C++
어려웠다.. 다른 사람의 풀이를 참고해서 공부한 뒤에 풀었다. 어떤 분은 비트마스킹으로 풀기도 했다. 쩔더라. 다시 한 번, 까먹을까봐 메모해놓는 부분은 lower_bound()는 iterator를 리턴한다는점. lower_bound()는 이상 이니까, 문제에서 필요한 이상 과도 매칭이 잘 된다. #include #include #include #include #include using namespace std; vector solution(vector info, vector query) { vector answer; map scores; string ta[4][2] = { {"-", ""}, {"-", ""}, {"-", ""}, {"-", ""} }; for(auto i : info) { string..
2023. 10. 2.