大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全家桶1年46,售后保障稳定
//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用于标记某一站是否加油,x[i]表示第i个加油站距离起始点的距离
void Greedy_Select(int x[],int f[])//选择在哪一个加油站停车
{
int n=30;//邮箱满的时候,能够跑的英里数
for(int i=2;i<=N;++i)
{
if(x[i]>n)//如果起始点到某个加油站的距离大于汽车在邮箱满的时候能够走的公里数,则在前一站加油
{
f[i-1]=1;//标记前一站需要加油
n=30;
n=n+x[i-1];//改变当前的距离,因为在第i-1站已经加过油
}
}
}
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);
}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234753.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...