58同城笔试题:数组去重;分饼干(分糖果);最小路径和(leetcode64)
1. 数组去重
题目描述
/**
* 有序数组去重
* 输出最终的数字个数
* 输入:1,2,2
* 输出:2
* @author Turing
*
*/
代码
import java.util.*;
public class E {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] str = sc.nextLine().split(",");
int len = str.length;
int [] array = new int[len];
for (int i = 0; i < len; i++) {
array[i] = Integer.valueOf(str[i]);
}
int index = 1;
for (int i = 0; i < len-1; i++) {
if(array[i]!=array[i+1]){
array[index] = array[i+1];
index++;
}
}
System.out.println(index);
}
}
2. 分饼干(分糖果)
题目描述
/**
* 分糖果问题类似
* 分饼干问题,每个孩子至少一个饼干,
* 如果两个孩子坐一起,评分高的孩子必须得到更多的饼干(左右都比较)
* 输出老师购买饼干总数的最小值
* 输入:
6
3
6
3
5
6
2
* 输出:
10
* 说明:第一个数表示孩子数为6;1+2+1+2+3+1=10
*/
代码
import java.util.*;
public class E4 {
public static int m;
public static int n;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
int[] score = new int[n];
int[] count = new int[n];
for (int i = 0; i < n; i++) {
score[i] = sc.nextInt(); }
Arrays.fill(count, 1);
for(int i=1; i<n; i++){
if (score[i]>score[i-1]) {
count[i]=count[i-1]+1;
}
}
for(int i=n-2; i>=0; i--){
if (score[i]>score[i+1] && count[i]<=count[i+1]) {
count[i]=Math.max(count[i], count[i+1]+1);
}
}
int sum = 0; for (int i = 0; i < count.length; i++) {
sum += count[i];
}
System.out.println(sum); }
}
3. 最小路径和(leetcode64)
题目描述
/**
* 有一个地图,围棋棋盘,两点之间有行走距离起点为左上角,终点为右下角在地图上,
* 每次行走只能沿线移动到移动的临近的点
* 并累加路径计算一个人从地图的起点走到终点的最小路径为多少?
* 输入:
* m*n地图表示如下:
* 3
* 3
* 1 3 4
* 2 1 2
* 4 3 1
* 其中 m=3,n=3表示3*3矩阵
* 行走路径为: 下》右》右》下
* 路径总长:1+2+1+2+1=7
*
* @author Turing
*
*/
代码
import java.util.*;
public class E4 {
public static int m;
public static int n;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
m = sc.nextInt();
n = sc.nextInt();
int [][] grid = new int[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
grid[i][j] = sc.nextInt();
}
}
System.out.println(minpath(grid, 0, 0));
}
public static int minpath(int[][]grid, int i,int j){
if(i==m||j==n){
return Integer.MAX_VALUE;
}
if(i==m-1&&j==n-1){
return grid[i][j];
}
return grid[i][j]+Math.min(minpath(grid, i+1, j), minpath(grid, i, j+1));
}
}
58同城笔试题:数组去重;分饼干(分糖果);最小路径和(leetcode64)的更多相关文章
- 100 道 Linux 笔试题,能拿 80 分就算大神!
本套笔试题共100题,每题1分,共100分.(参考答案在文章末尾) 1. cron 后台常驻程序 (daemon) 用于: A. 负责文件在网络中的共享 B. 管理打印子系统C. 跟踪管理系统信息和错 ...
- 推荐收藏:100道Linux笔试题,能拿90分以上的都去了BAT
本套笔试题共100题,每题1分,共100分.(参考答案在文章末尾) 1. cron 后台常驻程序 (daemon) 用于: A. 负责文件在网络中的共享 B. 管理打印子系统 C. 跟踪管理系统信息和 ...
- js面试题-数组去重
今天,在聊天群里看到数组去重的话题,面试者的答案如下: 参考答案如下: 程序员思维,做出如下测试: 未考虑到:1,‘1’是不同的,应该不去重 未考虑到对象 所以,参考答案只能去重基础类型 根据以往看过 ...
- 2019 58同城java面试笔试题 (含面试题解析)
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.58同城等公司offer,岗位是Java后端开发,最终选择去了58同城. 面试了很多家公司,感觉大部分公司考察的点 ...
- js面试题之数组去重对比
最近看一些面试题,很多都提到了数组去重,用的最多的不外乎就是下面这个例子 arr.filter(function(value,index,arr){ return arr.indexOf(value, ...
- 也许你需要点实用的-Web前端笔试题
之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w ...
- C/C++ 笔试题
/////转自http://blog.csdn.net/suxinpingtao51/article/details/8015147#userconsent# 微软亚洲技术中心的面试题!!! 1.进程 ...
- Web前端面试笔试题总结
最近一段时间要毕业了,忙着找工作,见过不少笔试面试题,自己总结了一些加上网上找的一些整合了一下.答案暂时都东拼西凑出来了,但是还是先不发出来,一方面是答案并不是唯一的并且自己的答案不能保证对,另一方面 ...
- 收藏所用C#技术类面试、笔试题汇总
技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...
随机推荐
- celery定时器
Celery 1.什么是Clelery Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统 专注于实时处理的异步任务队列 同时也支持任务调度 Celery架构 Celery的架构由三部分组 ...
- golang--redis连接池
通过golang对redis操作,还可以通过redis连接池,流程如下: (1)事先初始化一定数量的连接,投入到连接池: (2)当go需要操作redis时,直接从连接池取出连接即可: (3)这样可以节 ...
- dva+umi+antd项目从搭建到使用(没有剖验证,不知道在说i什么)
先创建一个新项目,具体步骤请参考https://www.cnblogs.com/darkbluelove/p/11338309.html 一.添加document.ejs文件(参考文档:https:/ ...
- njnja 安装
git clone git://github.com/ninja-build/ninja.git && cd ninja 安装re2c wget https://kojipkgs.f ...
- hdu-6415 计数DP
Nash Equilibrium is an important concept in game theory. Rikka and Yuta are playing a simple matrix ...
- SynchronusQueue
/** * 当向SynchronousQueue插入元素时,必须同时有个线程往外取 * SynchronousQueue是没有容量的,这是与其他的阻塞队列不同的地方 */ public class S ...
- 【BZOJ1921】【CTSC2010】珠宝商(点分治,后缀自动机)
[BZOJ1921][CTSC2010]珠宝商(点分治,后缀自动机) 题面 洛谷 BZOJ权限题 题解 如果要我们做暴力,显然可以以某个点为根节点,然后把子树\(dfs\)一遍,建出特征串的\(SAM ...
- Java开发桌面程序学习(13)——Javafx多线程 下载功能
普通使用 Task<Void> task = new Task<Void>() { @Override protected void succeeded() { super.s ...
- Spring Security 教程 大牛的教程
https://www.iteye.com/blog/elim-2247073 Spring Security 教程 Spring Security(20)——整合Cas Spring Securit ...
- css横屏问题的设置
<link rel="stylesheet" media="all and (orientation:portrait)" href="css/ ...