第一题

第一道题要计算的是最小漂流船,已知每艘船最多可以承载2人,但是重量不能超过limit,求最少需要多少船只?

第一行输入的是参与人员的体重数组,第二行输入的是漂流船承载的最大重量。求最小船只数?
import java.util.Arrays;
import java.util.Scanner;
public class B4 {public int N = 2;public static void main(String[] args) {Scanner sc=new Scanner(System.in);String[] weightstr = sc.nextLine().split(" ");int limit = sc.nextInt();int num = weightstr.length;int[] weight = new int[num];for (int i = 0; i < weight.length; i++) {weight[i] = Integer.valueOf(weightstr[i]);}int result = getShipNum(weight, num, limit);System.out.println(result);}public static int getShipNum(int[] weight,int num, int limit){int number = 0;Arrays.sort(weight);int i,j;for (i=num-1, j=0; i>=0 && j<=num-1 && j<i; i--) {number++;if(weight[i]+weight[j]<=limit){j++;}}if(j==i){number++; }return number;}
}

第二题

第二道要计算主城之间的最小距离,应该是要用迪杰斯塔拉算法。

public class B5 {public static int N = 6;public static void main(String[] args) {Scanner sc=new Scanner(System.in);int[][] relation = new int[N][N];for (int i = 0; i < N; i++) {String[] vi = sc.nextLine().split(" ");for (int j = 0; j < N; j++) {relation[i][j] = Integer.valueOf(vi[j]);if(relation[i][j]==-1){relation[i][j] = Integer.MAX_VALUE;}}}int[] shortestTime = getShortestTime(relation);for (int i = 1; i < N; i++) {System.out.println(shortestTime[i]);}}public static int[] getShortestTime(int[][] relation){int[] shortestTime = new int[N];shortestTime[0] = 0;int visited[] = new int[N];visited[0] = 1;for (int i = 1; i < N; i++) {shortestTime[i] = relation[0][i];}for (int times = 0; times < N; times++) {int position = 0;int min = Integer.MAX_VALUE;for (int i = 1; i < N; i++) {if(visited[i]==0){if(min>shortestTime[i]){min = Math.min(min, shortestTime[i]);position = i;}}}shortestTime[position] = min;visited[position]=1;for (int j = 1; j < N; j++) {int newdistance = shortestTime[position]+relation[position][j];if(visited[j]==0 && relation[position][j]<Integer.MAX_VALUE && newdistance<shortestTime[j]){shortestTime[j] = newdistance;}}} return shortestTime;}
}

转载于:https://www.cnblogs.com/haimishasha/p/11402513.html

完美世界:笔试题(最小漂流船只数累计,主城之间的最小距离迪杰斯特拉)...相关推荐

  1. PAT 1003 Emergency(最短路(迪杰斯特拉||贝尔曼)最小边权下的最大点权)

    1003. Emergency (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue As an emerg ...

  2. LeetCode 第 59 场力扣夜喵双周赛(最短路径数+迪杰斯特拉、动态规划+最长公共前缀问题) / 第255场周赛(二进制转换,分组背包,子集还原数组(脑筋急转弯))

    第 59 场力扣夜喵双周赛 两道400多五百,后两道都写出代码来了,但是都有问题,哭辽- 还有刚开始第一道测试好慢,搞心态了 5834. 使用特殊打字机键入单词的最少时间 有一个特殊打字机,它由一个 ...

  3. LeetCode 1976. 到达目的地的方案数(迪杰斯特拉 Python 优先队列)

    文章目录 1. 题目 2. 解题 1. 题目 你在一个城市里,城市由 n 个路口组成,路口编号为 0 到 n - 1 ,某些路口之间有 双向 道路. 输入保证你可以从任意路口出发到达其他任意路口,且任 ...

  4. LeetCode 1786. 从第一个节点出发到最后一个节点的受限路径数(迪杰斯特拉 + 拓扑排序)

    文章目录 1. 题目 2. 解题 1. 题目 现有一个加权无向连通图. 给你一个正整数 n ,表示图中有 n 个节点,并按从 1 到 n 给节点编号:另给你一个数组 edges ,其中每个 edges ...

  5. 大厂常见笔试题 滑动窗口内数的和

    大厂常见笔试题,我以为出一个很难的题,结果出了一个基础题, 给你一个大小为n的整型数组和一个大小为k的滑动窗口,将滑动窗口从头移到尾,输出从开始到结束每一个时刻滑动窗口内的数的和. 样例 对于数组 [ ...

  6. 2013 小米校园招聘笔试题之 找异形数

    异形数: 在一个长度为n的整形数组a里,除了三个数字只出现一次外,其他的数字都出现了2次.请写程序输出任意一个只出现一次的数字,程序时间和空间复杂度越小越好. 例如: a = {1,3,7,9,5,9 ...

  7. 网易2018实习生招聘笔试题-JAVA开发实习生

    网易2018实习生招聘笔试题-JAVA开发实习生 如何从有数字规律的网址抓取网页并保存在当前目录?假设网址为 http://test/0.xml,其中这个数字可以递增到100. for(int i=0 ...

  8. 笔试题汇总一(网易)

    2018-03-27 一.选择题 1. 数字图像颜色空间中,常被彩色显像管采用的是哪一种:A A.RGB     B.HIS     C.CMYX    D.YUV 2. 用1*3的瓷砖密铺3*20的 ...

  9. 2016年头条校招笔试题

    一.单选题 1.栈是先进后出的数据结构,给定一个大小为3的初始状态为空的栈,已知一组数据经过这个栈后,最终的数据顺序依次为:1 3 2 4 问原始进栈的数据不可能是以下的哪组? A 2 3 1 4 B ...

最新文章

  1. 在CentOS 6.8 x86_64上利用devtoolset搭建GCC 4.9.2和5.3.1开发环境
  2. python读中文文本_python读取中文txt文本
  3. CenTos6.8安装Heartbeat
  4. vue+vuecli+webapck2实现多页面应用
  5. python中八皇后如何运算的_python解决八皇后算法
  6. 《Redis官方文档》Data types—数据类型
  7. mac修改php配置文件,MAC下通过改apache配置文件切换php多版本的方法
  8. linux rsync 目录同步,linux下使用rsync同步目录
  9. OpenCV-Python实战(17)——人脸识别详解
  10. (转)switch与ifelse的效率问题 .
  11. nodejs 使用的一些http网络请求模块
  12. Linux 备份与恢复
  13. 龙星电脑横机制版软件_龙星制版软件下载 龙星电脑横机是什么系统
  14. matlab画传输函数幅频曲线
  15. SQL日期时间格式转换大全
  16. poj 1945 Power Hungry Cows 启发式搜索
  17. SQL Server安装和修改身份验证方式
  18. 货币金融学(米什金)笔记:金融体系、货币相关
  19. Gdrive 使用教程
  20. iOS马甲包开发招式及规避4.3方法合集

热门文章

  1. Tableau中的行级数据安全性——第2部分
  2. 用于指纹验证的C#框架
  3. java和oc_Java和OC中的数据容器和数组
  4. redis 消息队列 过段时间不能下发_以Redis来谈消息队列
  5. php验证返回值,php接口返回数据 用echo 还是return?
  6. 通过url路径下载服务器文件
  7. 小程序进入页面图片渲染会拉伸闪下变形优化bug
  8. java.lang.IllegalStateException: Ambiguous mapping found. Cannot map ' ' bean method
  9. 共享未授予用户在此计算机上设置家庭组,Win10系统关闭了家庭组如何共享文件?...
  10. 动态添加表格点击事件