BOJ 15686 치킨 배달
·
알고리즘/BOJ
www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 생각보다 쉽게 풀었다. 치킨집이 총 13개까지 주어지는 조건을 봤고, 치킨집과 집을 매칭 시키는 것이 combination을 떠올리게 한다. 따라서 그래프 탐색이 아니라 조합, 경우의 수로 접근해봤다. 일단 보자마자 집을 원소로 가지는 a벡터, 치킨집을 원소로 가지는 b벡터를 인자로 받아 각 원소를 \(O(N^2)\)으로 순회하며 가장 작은 치킨 거리를 찾아 리턴해주는 함수를 만들었다. 1..
[프로그래머스 C++] 모의고사
·
알고리즘/Programmers
문제 정답의 배열이 주어지면 1번 수포자부터 3번 수포자까지 가장 많은 정답을 받은 사람을 answer 배열에 넣으면 된다. 수포자의 반복되는 패턴을 a, b, c 배열에 담아 answers 인덱스와 함께 돌려가면서 카운트를 올려주면 된다. #include #include #include using namespace std; vector solution(vector answers) { vector answer; vector a = { 1,2,3,4,5 }, b = { 2,1,2,3,2,4,2,5 }, c = { 3,3,1,1,2,2,4,4,5,5 }; vector C(3); int ai = 0, bi = 0, ci = 0; for (auto i : answers) { if (i == a[ai++]) { ..