16431_베시와 데이지
링크
https://www.acmicpc.net/problem/16431
풀이
베시는 대각선으로도 이동할 수 있습니다.
베시가 존과 가로로 떨어져 있는 만큼을 a, 세로로 떨어져 있는 만큼을 b라고 했을 때, 존이 이동하는 시간은 max(a, b) – min(a, b) + min(a, b) = max(a, b)입니다.
가로와 세로 중 더 적은 부분은 대각선으로 이동하면서 상쇄됩니다.
데이지는 가로와 세로로만 이동하니까, 똑같이 뒀을 때 a+b입니다.
베시 = max(a,b)
데이지 = a+b
둘 중 더 작은 소를 출력하면 됩니다. 같으면 tie를 출력합니다.
코드
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 |
//16431_베시와 데이지 #include <cstdio> #include <algorithm> #include <math.h> using namespace std;
int br, bc, dr, dc, jr, jc; int brr, bcc, drr, dcc; int bgo, dgo;
int main() { scanf("%d %d", &br, &bc); scanf("%d %d", &dr, &dc); scanf("%d %d", &jr, &jc);
brr = abs(jr - br); bcc = abs(jc - bc); drr = abs(jr - dr); dcc = abs(jc - dc);
bgo = max(brr, bcc); dgo = drr + dcc;
if (bgo < dgo) printf("%s\n", "bessie"); else if (dgo < bgo) printf("%s\n", "daisy"); else printf("%s\n", "tie");
return 0; } |
'PS > BOJ' 카테고리의 다른 글
[백준 BOJ][세그먼트 트리] 2336 굉장한 학생 (0) | 2018.12.01 |
---|---|
[백준 BOJ] 16435 스네이크 버드 (0) | 2018.11.29 |
[백준 BOJ][DP] 16507 어두운 건 무서워 (0) | 2018.11.27 |
[백준 BOJ] 16504 종이접기 (0) | 2018.11.26 |
[백준 BOJ] 1138 한 줄로 서기 (0) | 2018.11.25 |