題目連結: https://zerojudge.tw/ShowProblem?problemid=d057
# 解題思路
如果同行且同列,就已經在上面了,所以 0 步
如果同行或同列,或者,斜率為一或負一 (絕對值後等於一),則一步就夠了
如果不是前兩種狀況,則需要兩步
# 程式碼
#include <iostream> | |
#include <cstdlib> | |
using namespace std; | |
int main() | |
{ | |
float X1,Y1,X2,Y2; | |
while(cin>>X1>>Y1>>X2>>Y2) | |
{ | |
if(X1==0&&Y1==0&&X2==0&&Y2==0) | |
break; | |
else | |
if(X1==X2&&Y1==Y2) | |
cout<<0<<endl; | |
else if(X1==X2||Y1==Y2||abs((X1-X2)/(Y1-Y2))==1) | |
cout<<1<<endl; | |
else | |
cout<<2<<endl; | |
} | |
return 0; | |
} |