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#技术类面试、笔试题汇总
技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...
随机推荐
- autojump--懒人利器
只有打开过的目录 autojump 才会记录,所以使用时间越长,autojump 才会越智能. 可以使用 autojump 命令,或者使用短命令 j. 跳转到指定目录 j directoryName ...
- 记一个bootstrap定制container导致页面X轴出现横向滚动条的坑
壹 ❀ 引 在bootstrap定制时,因为UI给的图纸的页面主体部分宽度为1200px,所以我将container容器宽度从默认的1170px改成了1200px,随后在页面缩小的调试过程中发现了页 ...
- Sublime和VSCode生成基础HTML代码
我们在编写前端页面时,常希望能自动生成基础的HTML代码.而在Sublime和VSCode就有这样的功能 在Sublime中,在编辑栏输入html,然后敲Tab键,则自动生成代码如下: <!DO ...
- 【Linux】文本处理工具介绍
文本处理工具介绍 grep.sed和awk都是文本处理工具,各自都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的.相比较而言,sed和awk功能更强大,且已独立成一种语言来介绍. grep: ...
- 用python读写和处理csv文件
import requestsfrom bs4 import BeautifulSoupimport csv date = open('test.csv', 'w')writer = csv.writ ...
- WPF 使用EventTrigger时设置SouceName技巧
使用情节触发器时,如果有触发源/触发源控件时可以将情节触发器放置最顶级的面板控件的触发器中. 通过blend这个神器真的是可以学到不少东西. 代码: //情节动画放置于顶级控制面板 <Widno ...
- IDEA maven设置配置
IDEA Maven配置 1. 下载maven 下载地址 从官网上,下载一个压缩包,然后解压到任意的文件夹 Maven的安装必须需要jdk1.7+ 2. 环境变量设置 M2_HOME改为具体的路径,其 ...
- 基于C# WinForms窗体——飞机大战
原文:基于C# WinForms窗体——飞机大战 using System; using System.Collections.Generic; using System.ComponentModel ...
- C# - 操作Word文档小实验
前言 本篇主要记录:VS2019 WinFrm桌面应用程序实现对Word文档的简单操作. 准备工作 搭建WinFrm前台界面 添加必要的控件,如下图 NuGet包管理器 安装Microsoft.Off ...
- hibernateHQL
HQL 即Hibernate Query Language的缩写 hql和sql区别/异同 HQL ...