P1433 吃乳酪 (dfs+剪枝)
題目描述
房間裡放著n塊乳酪。一隻小老鼠要把它們都吃掉,問至少要跑多少距離?老鼠一開始在(0,0)點處。
輸入輸出格式
輸入格式:
第一行一個數n (n<=15)
接下來每行2個實數,表示第i塊乳酪的座標。
兩點之間的距離公式=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))
輸出格式:
一個數,表示要跑的最少距離,保留2位小數。
輸入輸出樣例
輸入樣例#1: 複製
4
1 1
1 -1
-1 1
-1 -1
1 1
1 -1
-1 1
-1 -1
輸出樣例#1: 複製
7.41
直接暴力會超時,剪枝一下。。。
#include<bits/stdc++.h>
using namespace std;
double sum=0,ans=1000000000;int n; double a[20],b[20],c[20];double dis[20][20];
void dfs(int w,int r)
{
if(sum>ans)//這剪枝有點。。。
return ;
if(r==n)
{
if(ans>sum)
ans=sum;
return ;
}
for(int i=1;i<=n;i++)
{
if(c[i]==0)
{
sum=sum+dis[w][i];
c[i]=1;
dfs(i,r+1);
c[i]=0;
sum=sum-dis[w][i];
}
}
}
int main()
{
scanf("%d",&n);
memset(c,0,sizeof(c));
for(int i=1;i<=n;i++)
{
scanf("%lf %lf",&a[i],&b[i]);
}
for(int i=0;i<=n;i++)
{
for(int j=0;j<=n;j++)
dis[i][j]=sqrt((a[i]-a[j])*(a[i]-a[j])+(b[i]-b[j])*(b[i]-b[j]));
}
c[0]=1;
dfs(0,0);
printf("%.2lf\n",ans);
return 0;
}
相關文章
- 洛谷題單指南-搜尋-P1433 吃乳酪
- P1434 [SHOI2002]滑雪 (dfs+剪枝)
- 模型剪枝:剪枝粒度、剪枝標準、剪枝時機、剪枝頻率模型
- 數獨問題(DFS+回溯)
- 洛谷 P3958乳酪
- hdu 6446 Tree and Permutation(dfs+思維)
- AI會動你的“乳酪”嗎?AI
- Alpha-Beta 剪枝
- 活字印刷 回溯剪枝
- 除了騰訊,誰敢動NS的乳酪?
- 空間剪枝最佳化
- DFS剪枝最佳化策略
- 《資料安全法》動了誰的“乳酪”
- pytorch中中的模型剪枝方法PyTorch模型
- 基於pytorch實現模型剪枝PyTorch模型
- 實踐Pytorch中的模型剪枝方法PyTorch模型
- [leetcode 87 擾亂字串] [剪枝搜尋]LeetCode字串
- 模型小型化:蒸餾法、剪枝模型
- 2024.3.15 Alpha-Beta 剪枝+CF div2
- 模型壓縮-剪枝演算法詳解模型演算法
- 貪吃蛇
- CF774A. Hongcow Builds A Nation 題解 簡單dfs+組合計數GCUI
- 模型壓縮-模型蒸餾、模型剪枝、模型量化模型
- 04 貪吃蛇
- 貪吃蛇jsJS
- 剪枝量化初完結,蒸餾學習又上場
- 「AutoML」如何使用強化學習進行模型剪枝?TOML強化學習模型
- 人工智慧進階-TensorFlow核心之剪枝優化人工智慧優化
- 楊立昆:乳酪和葡萄酒是法國人長壽秘訣
- 上海證券:乳酪正處黃金期,國產品牌崛起 (附下載)
- 華為0821筆試第三題筆記-回溯+剪枝筆試筆記
- Acwing166 數獨題解 - DFS剪枝最佳化
- 決策樹模型(3)決策樹的生成與剪枝模型
- 利用LSTM思想來做CNN剪枝,北大提出Gate DecoratorCNN
- 猴子吃桃問題
- 【抹茶漸層乳酪蛋糕】Matcha Ombré Cheesecake:烘培小白也可以輕鬆做到哦!
- python_pygame_alpha-beta剪枝演算法_玩中國象棋PythonGAM演算法
- 鴻蒙開發遊戲(四)---大魚吃小魚(互吃升級)鴻蒙開發遊戲