題目大意:
房間裡放著n塊乳酪。乙隻小老鼠要把它們都吃掉,問至少要跑多少距離?老鼠一開始在(0,0)點處。
思路:
明顯的dfs!
這道題的思路是十分清晰的:
1.讀入,順便用勾股定理求兩點之間的距離。
2.dfs,從(0,0)開始,搜尋每乙個點,將最短答案記錄在minn裡。
easy!
**:
#include
#include
#include
using
namespace
std;
double a[101][101],x[101],y[101],minn;
int n,t[101];
void dfs(int x,int y,double k) //dfs
if (k>=minn) return; //剪枝
for (int i=1;i<=n+1;i++) //列舉乙個點(加上(0,0)共有n+1個點)
if (t[i]==0) //沒有走過
}int main()
t[1]=1;
minn=2147483647;
dfs(1,0,0);
printf("%0.2lf\n",minn);
return
0;}
洛谷 P1433 吃乳酪
題目描述 房間裡放著n塊乳酪。乙隻小老鼠要把它們都吃掉,問至少要跑多少距離?老鼠一開始在 0,0 點處。輸入輸出格式 輸入格式 第一行乙個數n n 15 接下來每行2個實數,表示第i塊乳酪的座標。兩點之間的距離公式 sqrt x1 x2 x1 x2 y1 y2 y1 y2 輸出格式 乙個數,表示要跑...
洛谷P1433 吃乳酪
房間裡放著n塊乳酪。乙隻小老鼠要把它們都吃掉,問至少要跑多少距離?老鼠一開始在 0,0 點處。輸入格式 第一行乙個數n n 15 接下來每行2個實數,表示第i塊乳酪的座標。兩點之間的距離公式 sqrt x1 x2 x1 x2 y1 y2 y1 y2 輸出格式 乙個數,表示要跑的最少距離,保留2位小數...
洛谷P1433 吃乳酪
房間裡放著n塊乳酪。乙隻小老鼠要把它們都吃掉,問至少要跑多少距離?老鼠一開始在 0,0 點處。輸入格式 第一行乙個數n n 15 接下來每行2個實數,表示第i塊乳酪的座標。兩點之間的距離公式 sqrt x1 x2 x1 x2 y1 y2 y1 y2 輸出格式 乙個數,表示要跑的最少距離,保留2位小數...