算法导论答案 16.2-4
生活随笔
收集整理的這篇文章主要介紹了
算法导论答案 16.2-4
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
//16.2-4
#include <iostream>
using namespace std;#define N 6
int x[N+1]={0,10,40,60,90,120,140},f[N+1]={0};//f用于標(biāo)記某一站是否加油,x[i]表示第i個加油站距離起始點的距離
void Greedy_Select(int x[],int f[])//選擇在哪一個加油站停車
{int n=30;//郵箱滿的時候,能夠跑的英里數(shù)for(int i=2;i<=N;++i){if(x[i]>n)//如果起始點到某個加油站的距離大于汽車在郵箱滿的時候能夠走的公里數(shù),則在前一站加油{f[i-1]=1;//標(biāo)記前一站需要加油n=30;n=n+x[i-1];//改變當(dāng)前的距離,因為在第i-1站已經(jīng)加過油}}
}void Construct_Opitimal_Solution(int x[],int f[])//輸出需要在哪一站加油
{for(int i=1;i<=N;++i){if(f[i]==1)cout<<"The gas station "<<i<<" is chosen! And its distance is "<<x[i]<<endl;}
}void main()
{Greedy_Select(x,f);Construct_Opitimal_Solution(x,f);
}
總結(jié)
以上是生活随笔為你收集整理的算法导论答案 16.2-4的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 服务器主板电池的电压不稳定怎么办,轻松解
- 下一篇: 投票统计器用单片机c语言编写,基于51单