[프로그래머스] Lv.1 공원 산책 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 로봇 강아지가 장애물('X')과 길('O')로 이루어진 공원에서 주어진 명령에 따라 이동한다. 이동 조건은 다음과 같다:명령 형식: "방향 거리" (예: "E 5"는 동쪽으로 5칸 이동).이동 조건:공원을 벗어나면 이동하지 않음.이동 경로에 장애물이 있으면 이동하지 않음.로봇 강아지가 모든 명령을 수행한 후의 최종 위치를 [세로 좌표, 가로 좌표]로 반환한다.공원의 좌측 상단 좌표는 (0, 0), 우측 하단 좌표는 (H - 1, W - 1)...
[프로그래머스] Lv.1 비밀지도 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/17681 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 2018 KAKAO BLIND RECRUITMENT에 나온 문제이다. 암호화된 두 개의 비밀지도를 조합하여 길을 표시하려고 한다.조건지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 공백(" ") 또는 벽("#") 두 종류로 이루어져 있다.전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 지도 1과 지도 2라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공..
[프로그래머스] Lv.1 카드뭉치 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았다.코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고싶다.원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용한다.한 번 사용한 카드는 다시 사용할 수 없다.카드를 사용하지 않고 다음 카드로 넘어갈 수 없다.기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없다. 풀이 방법두 개의 카드 뭉치가 존재하므로 cards1_position = ..
[프로그래머스] Lv.1 행렬의 덧셈 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/12950 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 된다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환해라. arr1 = [[1, 2], [3, 4]]  arr2 = [[5, 6], [7, 8]] answer = [[6,8,], [10,12]] 풀이 방법2차원 백터 배열 입력방법만 잘 알고 있으면 된다.임시 배열 row를 할당하여 각 행렬의 원소를 덧셈한걸 넣어준다.그리고 그 r..
[프로그래머스] Lv.1 폰켓몬 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr N마리의 폰켓몬이 주어지며 각 폰켓몬은 고유 번호를 가진다. [1, 3, 4, 1] 의 경우는 아래와 같다. 1: 2마리3: 1마리4: 1마리 나는 N/2마리의 폰켓몬을 데려가길 원하고, 가장 많은 종류의 폰켓몬을 데려가려면 어떻게 해야 할까? 풀이 방법Hashmap을 사용했다.정렬의 필요가 없고 범위가 크다.폰켓몬 종류번호 1 ~ 200,000폰켓몬 수 1 ~ 1000020만 범위의 배열을 사용할 수도 있지만 for문을 돌리는데 시간이 오래 걸..
[프로그래머스] Lv.0 진료순서 정하기 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/120835 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이해가 되지 않아 한참 고민했던 문제다. 응급도를 기준으로 진료 순서를 정한다. 즉, 응급도가 높은 순서로 먼저 치료한다. 하지만 출력은 응급도 순서대로 정렬된 배열이 아니라, emergency 배열의 원래 순서를 기준으로 응급도를 저장해야 한다. 예를 들어, 환자들의 emergency가 [30, 10, 23, 6, 100]일 경우, 응급도가 높은 순서부터 보면 100이 가장 높고 6이 가장 낮다.따라서 결과는 [2, 4, 3, 5, 1]로 ..
[프로그래머스] Lv.1 추억 점수 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/176963 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 방법vector에서 find 함수만 사용할 수 있다면 이 문제는 쉽게 풀 수 있다. find 함수는 특정 값이 vector에 있는지 확인할 때 사용하는 함수다. 값을 찾으면 해당 값의 위치를 알려주는 iterator를 반환하고, 값을 찾지 못하면 vector.end()를 반환한다. 여기서는 photo 벡터의 이름이 name 벡터에 존재하는지 확인하고, 존재한다면 그 이름의 인덱스를 구해서 yearning 값을 더하면 된다. 주어진 정보..
[프로그래머스] Lv.2 주차 요금 계산 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 2022 KAKAO BLIND RECRUITMENT에 나온 문제이다.주차장의 요금표와 차량이 들어오고(입차) 나간(출차) 기록이 주어졌을 때, 차량별로 주차 요금을 계산하려고 한다. 조건차량이 입차되면 IN, 출차되면 OUT 기록이 주어진다.출차 기록이 없는 차량은 23:59에 출차한 것으로 간주한다.차량 번호가 같은 차량이 여러 번 입차할 수 있으며, 이를 누적 계산해야 한다.같은 차량 번호는 오름차순으로 정렬하여 결과를 출력해야 한다.풀이 ..