終於到週末啦!小易走在市區的街道上準備找朋友聚會,突然伺服器發來警報,小易需要立即回公司修復這個緊急bug。假設市區是乙個無限大的區域,每條街道假設座標是(x,y),小易當前在(0,0)街道,辦公室在(gx,gy)街道上。小易周圍有多個計程車打車點,小易趕去辦公室有兩種選擇,一種就是走路去公司,另外一種就是走到乙個計程車打車點,然後從打車點的位置坐計程車去公司。每次移動到相鄰的街道(橫向或者縱向)走路將會花費walktime時間,打車將花費taxitime時間。小易需要盡快趕到公司去,現在小易想知道他最快需要花費多少時間去公司。
輸入描述:
輸入資料報括五行:輸出描述:第一行為周圍計程車打車點的個數n(1 ≤ n ≤ 50)
第二行為每個計程車打車點的橫座標tx[i] (-10000 ≤ tx[i] ≤ 10000)
第三行為每個計程車打車點的縱座標ty[i] (-10000 ≤ ty[i] ≤ 10000)
第四行為辦公室座標gx,gy(-10000 ≤ gx,gy ≤ 10000),以空格分隔
第五行為走路時間walktime(1 ≤ walktime ≤ 1000)和taxitime(1 ≤ taxitime ≤ 1000),以空格分隔
輸出乙個整數表示,小易最快能趕到辦公室的時間輸入例子:
2輸出例子:-2 -2
0 -2
-4 -2
15 3
42因為是座標網格,所以總路徑的長度是固定值,所以,只需找出距離出發點最近的計程車打車點即可(還要排除掉直接走路去公司的情況)。
int getdistance(point & point1, point & point2)
int gotocompany(point * taxi, int n, point & home ,point & company, int walktime, int taxitime)
time[n] = walktime * getdistance(home, company);
auto mintimeiter = min_element(time.begin(), time.end());
return *mintimeiter;
}
//
// main.cpp
// gotocompany
//// created by jiajie zhuo on 2017/4/6.
//#include #include #include using namespace std;
class point
~point() {}
void setx(int x)
void sety(int y)
int getx()
int gety()
};int getdistance(point & point1, point & point2);
int gotocompany(point * taxi, int n, point & home ,point & company, int walktime, int taxitime);
int main(int argc, const char * argv)
int ty;
cout << "please input ty: ";
for (int i = 0; i < n; ++i)
point home;
point company;
int gx, gy;
cout << "please input gx and gy: ";
cin >> gx >> gy;
company.setx(gx);
company.sety(gy);
int walktime, taxitime;
cout << "please input walktime and taxitime: ";
cin >> walktime >> taxitime;
int mintime = gotocompany(taxi, n, home, company, walktime, taxitime);
cout << "the minimum time of going to company is " << mintime << endl;
delete taxi;
return 0;
}
發現問題的關鍵點:總路徑的長度是固定值,所以問題轉化為了尋找(計程車)距離的最小值。
2 趕去公司 網易2017春招
程式設計題 趕去公司 時間限制 1秒 空間限制 32768k 終於到週末啦!小易走在市區的街道上準備找朋友聚會,突然伺服器發來警報,小易需要立即回公司修復這個緊急bug。假設市區是乙個無限大的區域,每條街道假設座標是 x,y 小易當前在 0,0 街道,辦公室在 gx,gy 街道上。小易周圍有多個計程...
IT公司面試題
今天被架構師問了一連串的問題,估計問了有乙個多小時吧,有很多問題都答不上來,突然發現原來自己沒有掌握的知識太多了,原來我覺得技術是用來解決問題的,而不是用來研究的,但現在覺得要更快捷的解決問題,還得好好的研究他們的原理,凡事多問個 他的原理是什麼,底層是怎麼實現的 回來好好整理了一下知識點,我想就每...
網易2017春招 趕去公司 解題報告
標籤 空格分隔 牛客網 終於到週末啦!小易走在市區的街道上準備找朋友聚會,突然伺服器發來警報,小易需要立即回公司修復這個緊急bug。假設市區是乙個無限大的區域,每條街道假設座標是 x,y 小易當前在 0,0 街道,辦公室在 gx,gy 街道上。小易周圍有多個計程車打車點,小易趕去辦公室有兩種選擇,一...