본문 바로가기

PS/Educational Codeforces

Educational Codeforces Round 006. A

반응형

A.  Professor GukiZ's Robot

문제

https://codeforces.com/contest/620/problem/A

 

Problem - A - Codeforces

 

codeforces.com

 

문제요약

2차원 좌표상에서 시작점과 끝점을 받는데, 한 점에서 8방향으로 갈 수 있다고 할 때 시작점에서 끝점까지 몇 번만에 갈 수 있는가?

 

풀이

8방향이므로 x축 distance가 a, y축 distance가 b일 때 min(a,b)만큼은 대각선으로 간 후 abs(a-b)만큼은 x축이든 y축으로 직선으로 가면 시작점에서 끝점에 도달할 수 있다.

 

소스코드

#include <stdio.h>

int abs(int a){ return a<0?-a:a; }
int min(int a,int b){ return a<b?a:b; }

int main(){
    int a, b, x1, y1, x2, y2;
    scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
    a=abs(x1-x2), b=abs(y1-y2);
    printf("%d",min(a,b)+abs(a-b));
}
반응형