名企笔试:楚楚街2016招聘笔试(旅途)
题目描述

原来是要到醋溜站台乘坐醋溜快车到醋溜港”,亮亮解出了地图隐藏的秘密,赶紧奔向醋溜站台,但到了之后,亮亮忧桑地发现,从醋溜站台到醋溜港沿途的每个车站都有很多美女被他飒爽的英姿所吸引,只要经过车站就会被这些漂亮的女孩搭讪,但是现在亮亮一心想要寻找楚楚街而没空去搭理她们,所以亮亮希望在抵达醋溜港的时候被搭讪的次数最少。问亮亮抵达醋溜港最少会被搭讪多少次?

输入描述:

第一行包含两个整数N(2<=N<=5000),M(1<=M<=50000)。N表示公有N个汽车站,M表示公有M条公路,起点为1,终点为N。
第二行包含N个整数(0<=K<=10000),第i个整数表示在第i站有K个美女想要搭讪亮亮。
接下来M行,每行包含两个整数P(1<=P<=N),Q(1<=Q<=N),代表P,Q两个站是有班车直达的。

输出描述:

一个整数,即亮亮抵达醋溜港最少需要被搭讪的次数。

输入例子:

5 5
0 1 1 3 6
1 2
1 4
2 3
3 5
4 5

输出例子:

8

java版本的代码实现:

package cn.cat.algorithm;public class Journey {/*** 分析:使用贪婪算法,假设所有起点1线路最后都可以达到终点,*      一边寻找线路点,一边计算搭讪次数,如果最终真的能达到终点,则统计的搭讪次数有效,*      比较所有有效的搭讪数,获得最小值。* * @Description: * @author gwj* @Created 2018年4月18日 下午3:17:49 * @param args*/public static void main(String[] args) {//终点,线路数int n=5, m=5;//搭讪数据int[] accosts = new int[]{0, 1, 1, 3, 6};//线路数据int[][] lines = new int[][]{new int[]{1, 2},new int[]{1, 4},new int[]{2, 3},new int[]{3, 5},new int[]{4, 5}};int minAccostCount = Integer.MAX_VALUE;for (int i = 0; i < m; i++) {//找到起点站if (lines[i][0] == 1) {int curStation = lines[i][1];//注意数组下标从0开始,获取站点的搭讪数=站点-1int accostCount = accosts[lines[i][0] - 1] + accosts[lines[i][1] - 1];for (int j = 0; j < lines.length; j++) {if (lines[j][0] == curStation) {curStation = lines[j][1];accostCount += accosts[curStation -1];}if (curStation == n) {break;}}//lines[i][0]起点能到达终点,则比较并获取最小搭讪数if (curStation == n && minAccostCount > accostCount) {minAccostCount = accostCount;}}}System.out.println(minAccostCount);}
}

算法题:旅途(楚楚街2016招聘笔试)相关推荐

  1. 算法题:解密(楚楚街2016招聘笔试)

    名气笔试:楚楚街2016招聘笔试(解密) 题目描述 亮亮深吸一口气,小心地将盒子打开,里面是一张地图,地图上除了一些奇怪的字母以外没有任何路线信息,这可让亮亮犯了愁,这些字母代表了什么意思呢? 亮亮绞 ...

  2. 楚楚街2016招聘笔试(航线)

    楚楚街2016招聘笔试(航线) 题目描述 "呼!!终于到了,可是接下来要怎么走才能到达楚楚街港港呢?"亮亮在醋溜港直发愁. 突然"啾"的一下,一只银色小船出现在 ...

  3. 楚楚街2016招聘笔试(旅途)(未完待续)

    题目描述 原来是要到醋溜站台乘坐醋溜快车到"醋溜港",亮亮解出了地图隐藏的秘密,赶紧奔向醋溜站台 但到了之后,亮亮忧桑地发现,从醋溜站台到醋溜港沿途的每个车站都有很多美女被他飒爽的 ...

  4. 名企笔试:腾讯2016招聘笔试(微信红包)

    名企笔试:腾讯2016招聘笔试(微信红包) 题目描述 春节期间小明使用微信收到很多个红包,非常开心.在查看领取红包记录时发现,某个红包金额出现的次数超过了红包总数的一半.请帮小明找到该红包金额.写出具 ...

  5. 名企笔试:美团2016招聘笔试(股票交易日)

    美团2016招聘笔试(股票交易日) 题目描述 在股市的交易日中,假设最多可进行两次买卖(即买和卖的次数均小于等于2),规则是必须一笔成交后进行另一笔(即买-卖-买-卖的顺序进行).给出一天中的股票变化 ...

  6. 蘑菇街2016招聘笔试

    题目描述 给定一个字符串,问是否能通过添加一个字母将其变为回文串. 输入描述: 一行一个由小写字母构成的字符串,字符串长度小于等于10. 输出描述: 输出答案(YES\NO). 输入例子: coco ...

  7. 网易2016招聘笔试升级之路Java代码

    本文地址:http://blog.csdn.net/shanglianlm/article/details/72968583 小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能 ...

  8. 美团2016招聘笔试:奇数位丢弃

    对于一个由0-n的所有数按升序组成的序列,我们要进行一些筛选,每次我们取当前所有数字中从小到大的第奇数位个的数,并将其丢弃.重复这一过程直到最后剩下一个数.请求出最后剩下的数字. 输入描述: 每组数据 ...

  9. 楚楚街2016校招 ——礼物(动态规划)

    题目描述 "呼!!佳慧,我拿到面试直通卡了!""吓死宝宝了!哦,你拿到直通卡了啊,好哒,进去吧,你可以直接接受老大的面试了". 亮亮来到老大的办公室," ...

最新文章

  1. 伺服步进电机选型软件_关于伺服步进电机的28个问题
  2. aix系统32位和64位切换
  3. 贪心算法讲解(集合覆盖问题,旅行商问题求解)
  4. SQL Server数据归档的解决方案
  5. Spark记录-Scala语法基础
  6. 线性代数思维导图_线性代数入门级思维导图
  7. linux修改文件没有备份文件,linux文件或目录权限修改后如何恢复(备份了权限就能恢复)...
  8. CCNA-第十篇-VLAN-下
  9. 数据结构-栈1-顺序存储
  10. SAP License:O2O模式网站解决方案概述
  11. Vue 教程第十一篇—— vue-cli
  12. 吴恩达《cs229-机器学习》:1、梯度下降法与一元线性回归
  13. 6.1 统计学基本原理
  14. VirtualBox 教程
  15. 泛型转换https://www.cnblogs.com/eason-chan/p/3633210.html
  16. 资深工程师PCB经验介绍
  17. RN+SDK套壳轻松解决苹果审核被拒3.2.1问题、2.1大礼包问题【最新上架技术】
  18. mixly编程怎样音乐_使用mixly和Arduino结合蜂鸣器播放音乐
  19. cmd导入导出mysql中的数据库为sql文件
  20. LTE BCCH, PCCH, CCCH, DCCH, DTCH

热门文章

  1. Android应用线程池最大线程数量
  2. JSP include parm动作
  3. 老板不要怪员工不忠诚,看看你和员工合作的三层境界!
  4. apt-get upgrade 和 dist-upgrade 之间的区别
  5. auto与decltype
  6. D8016 “/ZI”和“/clr”命令行选项不兼容
  7. fileReader字符流读取中文乱码的解决办法
  8. Python raise用法(详细讲解)
  9. 全国⼯业各⾏业产能利⽤率(2017-2022年)
  10. 甲骨文与富士通利用SPARC架构打造M12超级设备