汽车加油问题

简介: 汽车加油问题

题目

Problem Description

一辆汽车加满油后可行驶n公里。旅途中有若干个加油站。设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。并证明算法能产生一个最优解。对于给定的n和k个加油站位置,计算最少加油次数。

Input

输入数据的第一行有2 个正整数n和k(n≤5000,k≤1000),表示汽车加满油后可行驶n公里,且旅途中有k个加油站。接下来的1 行中,有k+1 个整数,表示第k个加油站与第k-1 个加油站之间的距离。第0 个加油站表示出发地,汽车已加满油。第k+1 个加油站表示目的地。

Output

将计算出的最少加油次数输出。如果无法到达目的地,则输出“No Solution!”。

Sample Input

7 7

1 2 3 4 5 1 6 6

Sample Output

4

思路

最开始的时候以为是一个比较困难的贪心,考虑最优解等问题,后来认真读了读,好像就是一个遍历的循环。

首先对数组进行输入的时候来判断是否大于汽车加满油后可行驶公里,如果大于,直接输出“No Solution!”,这时候输出的时候,一定要return 0,不然会超时。如果小于,遍历一遍数组,定义一个sum和count,sun用来表示当前跑的公里数,如果超过N,则把sun归0,count++,i–,最后遍历出count的数值,直接输出即可。

代码

C代码:

#include <stdio.h>
#include <stdlib.h>
int main()
{
   int n, k, i;
   int a[5001] = {0};
   scanf("%d%d", &n, &k);
   for(i = 1; i <= k + 1; i++)
   {
       scanf("%d", &a[i]);
       if(a[i] > n)
       {
           printf("No Solution!");
            return 0;
       }
   }
   int count = 0;
   int sum = 0;
   for(i = 1; i <= k + 1; i++)
   {
       sum = sum + a[i];
       if(sum > n)
       {
           sum = 0;
           i--;
           count++;
       }
   }
   printf("%d\n", count);
    return 0;
}
/***************************************************
User name: jk170631黄良帅
Result: Accepted
Take time: 0ms
Take Memory: 168KB
Submit time: 2019-11-12 23:25:33
****************************************************/


相关文章
|
4月前
|
自动驾驶
对于无人驾驶汽车是否能够真正解决交通拥堵问题
对于无人驾驶汽车是否能够真正解决交通拥堵问题
对于无人驾驶汽车是否能够真正解决交通拥堵问题
|
4月前
|
传感器 人工智能 编解码
无人驾驶汽车将彻底改变我们的交通方式
无人驾驶汽车将彻底改变我们的交通方式
|
4月前
|
传感器 编解码 自动驾驶
无人驾驶汽车对人民出行的影响有哪些?
无人驾驶汽车对人民出行的影响有哪些?
|
4月前
|
传感器 人工智能 自动驾驶
无人出租车是一种利用人工智能、传感器、激光雷达等技术实现自动驾驶的交通工具
无人出租车是一种利用人工智能、传感器、激光雷达等技术实现自动驾驶的交通工具
无人出租车是一种利用人工智能、传感器、激光雷达等技术实现自动驾驶的交通工具
|
4月前
|
传感器 自动驾驶 安全
无人驾驶汽车的发展潜力巨大
无人驾驶汽车的发展潜力巨大
无人驾驶汽车的发展潜力巨大
|
4月前
|
自动驾驶 安全
无人驾驶汽车可以解决交通拥堵问题
无人驾驶汽车可以解决交通拥堵问题
EMQ
|
传感器 监控 安全
探索未来智能交通:网联汽车与汽车互联
本文将对网联汽车的常见应用场景、通信方式进行介绍,同时针对该领域当前所面临的挑战,结合 MQTT 协议优势加以分析,帮助读者了解在网联汽车应用构建中需要关注的因素。
EMQ
235 0
探索未来智能交通:网联汽车与汽车互联
|
传感器 安全 新能源
新能源汽车太猛了,这些卡脖子技术你了解吗?
从汽车行业的变化,我们即可初步看出芯片的重要性,那么,芯片对汽车行业的发展具体有哪些重要影响呢?
440 0
新能源汽车太猛了,这些卡脖子技术你了解吗?
汽车服务
开通汽车检测服务
354 0
汽车服务
为什么你还没有买新能源汽车?
新能源汽车这才刚刚开始,即便处于风起之时,仍道阻且长。
463 0
下一篇
无影云桌面