YOJ 共享單車

2021-08-01 19:14:30 字數 1604 閱讀 3293

description

現在簡化問題。將地圖設定成乙個由100公尺100公尺的畫素塊組成的二維平面區域。如果乙個方塊內有單車,則畫素塊顯示為字元「x」;如果此方塊內是可以通行的路,則顯示為「.」;再如果方塊是建築物,則顯示為「」,建築物不能通行。

小明在地圖上的位置顯示為「o」,可以朝,「上」、「下」、「左」,「右」,「左上」,「左下」,「右上」,「右下」八個方向走。下圖所示為乙個小明站在畫素方塊o,如果小明向右走到x,則走100公尺;如果向右上走,則走141公尺(不需要開方)。

假設小明和單車都在方塊的**。現在給出 t 幅根據以上規則建立的地圖,地圖行數和列數分別為 n 和

m,請分別估算小明要走多少公尺才能到最近的單車?

如果計算中出現小數,那麼直接捨棄。最後的輸出的結果為整型。 給出的地圖中至少有一輛單車,如果最終無法到達單車的位置,輸出-1。

input

第1行,t,表示下面有 t 組測試資料 對於每組測試資料 (1)第1行,n和m ,表示地圖的大小; (2)第2行開始,給出具體的地圖 。

output

t行資料

每行1個整數,表示問題的解

sample input

2

3 8

…..x..

.o…x..

……..

8 10

.*……

.*……

.*..x…

……….

…..*

..o..*

…….x..

*

sample output

400 300

學校龍舟賽中的一道題,一開始看到題目誤判成dfs。。結果耗了乙個多小時沒出結果。考完後思考了一下,其實這個題還是求最短路徑,斜線距離屬於干擾因素。奉上bfs**。

#include 

#include

#include

#include

#include

#include

using

namespace

std;

int m,n,sx,sy;

int mins=9999;

char data[99][99];

struct list

que[9999];

void bfs(int x,int y)

data[que[front].y][que[front].x]='*';

for(int i=0;i<8;i++)

if(data[ty][tx]=='.'||data[ty][tx]=='x')}}

if(mins==9999)

mins = -1;

}int main()}}

bfs(sx,sy);

cout

<< mins << endl;

}return

0;}

共享單車c

冷月老師每天上班從蘇州街地鐵站出來 都要思考很久是騎 去公司還是直接走過去 如果騎 則開鎖需要等 40s,已知冷老師騎 速度 4m s,走路速度 1.5m s.寫乙個程式幫助冷月老師判斷騎車快還是走路快.輸入地鐵到公司的距離,單位為公尺.如果騎車快,輸出 bicycle 如果走路快,輸出 walk ...

共享單車的討論

共享單車的利弊 我的觀點 方便 方便 還是方便 停放 停放 還是要停放 亂不 亂不 還是有點亂 管理 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫...

從共享單車到共享晶元設計

如火如荼的共享經濟正從中國向全世界蔓延,雖然共享經濟的發源不在中國,但是中國將共享激情演繹得淋漓盡致。現在全世界範圍內掀起了共享經濟的潮流,這不,已經從共享單車到共享充電寶 現在到了高大上的 晶元共享設計 日前,英國ip 商arm宣布,其十分流行的arm cortex m3處理器及相關ip子系統也授...