Algorithm 170

[백준 알고리즘/BOJ/C++] 1011 Fly me to the Alpha Centauri

공간이동 장치 작동 횟수의 최솟값을 구하는 문제다 1) x에서 y까지 가야 하는데 우주선의 공간이동 장치는 k-1, k, k+1 만큼씩 움직일 수 있다 2) 제일 처음엔 1광년 움직일 수 있고, y에 도착하기 직전에도 1광년을 움직일 수 있다 양쪽에서 같이 계산해줘야 한다 x에서 한칸, y에서 한칸 x에서 두칸, y에서 두칸 · · 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #include using namespace std; int t, x, y; void get(int cnt, int i) { if (x >= y) cout

Algorithm/BOJ 2021.01.17

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

5키로, 3키로짜리 설탕을 배달하는 상근이.. 귀찮아서 N키로의 설탕을 배달하러 갈 때 설탕 봉지를 최소한으로 가져가고 싶다 한다 봉지를 적게 들고 가고 싶으면 당연히 5키로짜리를 많이 들고 가는 게 좋다 하지만 급하게 5로 다 나눠버리면 오답이 된다 예를 들어 11을 입력받았다면 5키로짜리 하나, 3키로짜리 두 개를 가져가면 된다 급하게 5키로짜리를 2개 챙겨버리면 제대로 배달할 수 없게 된다 그러므로 남은 설탕이 5로 딱 맞아 떨어질 때 까지 3키로짜리 설탕을 하나씩 챙겨보면 된다 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include using namespace std; int main(void) { int n, resu..

Algorithm/BOJ 2021.01.17

[백준 알고리즘/BOJ/C++] 2775 부녀회장이 될테야

a층의 b호에 살려면 자신의 아래(a-1)층의 1호부터 b호까지 사람들의 수의 합만큼 사람들을 데려와 살아야 한다 k층 n호에는 몇 명이 살까? 아파트는 0층부터 14층까지 있고, 각 층엔 14개의 집이 있다 (1 ≤ k, n ≤ 14) 0층 i호엔 i명의 사람이 산다 (i > 0) 2차원 배열로 표현하면 쉽다 T번 출력해야 하니까 미리 배열을 채워두면 더 빠르다 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include using namespace std; int main(void) { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int apt[15][15] = ..

Algorithm/BOJ 2021.01.16

[백준 알고리즘/BOJ/C++] 10250 ACM 호텔

게으른 손님들이 엘리베이터에서 가까운 방을 배정받고 싶다고 한다 H x W 호텔에 N번째 손님은 몇 호를 쓰는지 출력하는 문제 보자마자 N을 H로 나눠야 할 것 같은 느낌이 온다 그러면 엘리베이터에서 얼마나 멀어질지 알 수 있다 N%H로 층 수를 구할 수 있다 그럼 W는 언제 쓰냐? 나도 잘 모르겠다.. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #include using namespace std; int main(void) { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int t, h, w, n; int room = 0; cin >> t; ..

Algorithm/BOJ 2021.01.16