본문 바로가기
728x90

Algorithm/PS24

[코딩테스트] 카카오 모빌리티 2022 하반기 1차 코테 사용 개념 정리 이번에는 2022년 11월 26일 카카오 모빌리티 2022년도 하반기 1차 코딩테스트에서 사용했던 개념들을 정리해보려 합니다. 테스트케이스는 모두 통과시켰으나, 문제의 정답 여부는 알 수가 없어서 결과는 나와봐야 알 것 같지만 난이도 자체는 쉬웠던(?) 것 같습니다. 특히 파이썬을 사용한다면, 쉽게 해결 가능한 문제들이었던 것 같습니다. String compare C++에서 string type 변수, 즉 문자열을 비교하기 위해서는 compare method를 사용합니다. 위와 같이 compare method를 사용하면, 출력 결과는 다음과 같습니다. 이 결과로 compare method를 사용하면 두 문자열이 같은 경우에는 0을 반환합니다. 만약 두 문자열이 다르다면, 사전적인 비교를 통해 method.. 2022. 11. 26.
백준 - 5014번, 스타트링크 문제, BFS 방식 풀이 정리 (C++) 이번에 풀이한 문제는? 백준 5014번 스타트링크 문제 풀이 정리입니다. https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net solved.ac 기준 실버 1 난이도의 문제이고 저는 BFS 방식으로 그래프를 탐색하는 알고리즘을 적용해서 풀이해 봤습니다. 문제 강호는 코딩 교육을 하는 스타트업 스타트링크에 지원했다. 오늘은 강호의 면접날이다. 하지만, 늦잠을 잔 강호는 스타트링크가 있는 건물에 늦게 도착하고 말았다. 스타트링크는 총 F층으로 이루어진 고층 건물에 .. 2022. 11. 9.
백준 - 11048번, 이동하기 문제 BFS및 Dynamic programming 풀이 (C++) 이번에 풀이해본 문제는 11048번 이동하기 문제로, solved.ac 기준 실버 2 난이도의 문제입니다. 요즘 들어 ps를 너무 오랫동안 방치해서 감을 살릴 겸 기본적인 예제가 없을까 하다가 적당한 난이도의 문제가 보여서 풀게 되었습니다. https://www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 www.acmicpc.net 문제 설명부터 정리한 이후 제 풀이 과정에 대해서 정리해 보겠습니다! 문제 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나.. 2022. 10. 31.
백준 - 12100번 2048 - easy 문제 풀이 정리 이번에 풀어본 문제는 solved.ac 기준 class 5에 속하는 2048문제입니다. 다들 알고 계시는 2048게임을 5번까지 시뮬레이션했을 때 결과로 뽑아낼 수 있는 최대의 수를 찾는 문제로 원래 2048 게임은 한 번 이동이 발생할 때마다 새로운 블록이 등장하는 것과 다르게 이 문제에서는 새로운 블록이 등장하지 않는 전제 하에 시뮬레이션을 구현하면 됩니다. 문제 링크 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 2048 게임은 여기서 플레이 해보실 수 있습니다! 2048 J.. 2022. 10. 13.
백준 - 17070번, 파이프 옮기기 1 문제 BFS 방식 풀이 (with C++) 문제 설명 유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1 ×1 크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 번호이고, 행과 열의 번호는 1부터 시작한다. 각각의 칸은 빈 칸이거나 벽이다. 오늘은 집 수리를 위해서 파이프 하나를 옮기려고 한다. 파이프는 아래와 같은 형태이고, 2개의 연속된 칸을 차지하는 크기이다. 파이프는 회전시킬 수 있으며, 아래와 같이 3가지 방향이 가능하다. 파이프는 매우 무겁기 때문에, 유현이는 파이프를 밀어서 이동시키려고 한다. 벽에는 새로운 벽지를 발랐기 때문에, 파이프가 벽을 긁으면 안 된다. 즉, 파이프는 항상 빈칸만 차지해야 한다. 파이프를 밀 수 있는 방향.. 2022. 10. 4.
백준 - 14938번, 서강그라운드 문제 풀이 - (C++) 이번에는 solved.ac에서 적당한 난이도의 문제를 고르다 class 4로 분류된 14938번 서강그라운드 문제가 적당히 풀만하지 않을까?라는 생각으로 풀어봤습니다. 난이도는 solved.ac 기준 골드 4로 class 4에 속한 평균적인 문제 같습니다. 14938번: 서강그라운드 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 www.acmicpc.net 문제 설명 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 하는 게임이다. 서강.. 2022. 9. 30.
728x90