본문 바로가기
알고리즘, 자료구조/알고리즘 문제

[SW] 8382 방향전환

by Wordbe 2019. 9. 6.
728x90

쉬운 문제,

규칙을 찾는 문제.

#include <cstdio>

inline int abs(const int& a){
    return a >= 0 ? a : -a;
}

int main() {
    int T;
    scanf("%d", &T);
    int x1, y1, x2, y2;
    for (int i=1; i<=T; ++i){
        scanf("%d %d %d %d", &x1, &y1, &x2, &y2);
        
        printf("#%d ", i);
        int dx = x2 - x1, dy = y2 - y1;
        int adx = abs(dx), ady = abs(dy);
        int ans;
        if (adx == ady) ans = 2 * adx;
        else {
            if (adx > ady) ans = 2 * ady;
            else ans = 2 * adx;

            int line = abs(adx - ady);
            if (line % 2) ans += 2 * line - 1;
            else ans += 2 * line;
        }
        printf("%d\n", ans);
    }
    return 0;
}
728x90

'알고리즘, 자료구조 > 알고리즘 문제' 카테고리의 다른 글

17143. 낚시왕  (0) 2019.09.24
14889. 스타트와 링크  (0) 2019.09.21
14888. 연산자 끼워넣기  (0) 2019.09.19
[SW Expert Academy] 1767. 프로세서 연결하기  (0) 2019.09.18
[SW] 7732 시간 개념  (0) 2019.09.05

댓글