2016去哪儿编程题:乘坐公交
生活随笔
收集整理的這篇文章主要介紹了
2016去哪儿编程题:乘坐公交
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
從小明家所在公交站出發有n路公交到公司,現給出每路公交的停站數(不包括起點和終點),及每次停的時間(一路車在每個站停的時間相同)和發車的間隔,先假定每輛車同時在相對時間0分開始發車,且所有車在相鄰兩個站之間的耗時相同,都為5分鐘。給定小明起床的相對時間(相對0的分鐘數),請計算他最早到達公司的相對時間。
給定每路車的停站數stops,停站時間period,發車間隔interval及公交路數n,出發時間s。請返回最早到達時間。保證公交路數小于等于500,停站數小于等于50。
解題
注意:
始發站不需要等待,到時間直接運行
路上花費時間 = 小明等待時間 + 公交車運行時間 + 公交車站等待時間 ?
小明到達時間 = 起床時間 + 路上花費時間
import java.util.*;public class TakeBuses {public int chooseLine(int[] stops, int[] period, int[] interval, int n, int s) {// write code hereint Min = Integer.MAX_VALUE;int time = 0;for(int i = 0;i<n;i++){time = getTime(stops[i] , period[i], interval[i],s);Min = Math.min(time,Min);}return Min + s;}// 路程所需時間public int getTime(int stop,int period,int interval,int s){// 等車時間int wait = interval - s%interval;if(wait == interval)wait = 0;// 人等待時間 + 相鄰兩站運行時間 + 站停的 時間int time = wait + (stop + 1) * 5 + period * stop;return time;} }?
轉載于:https://www.cnblogs.com/theskulls/p/5383964.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的2016去哪儿编程题:乘坐公交的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用coreData
- 下一篇: 请善用工具审核您的内核代码:)