华为2016研发工程师编程题---删数
题目是这样的:
有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被删除。
输入描述:
每组数据为一行一个整数n(小于等于1000),为数组成员数,如果大于1000,则对a[999]进行计算。
输出描述:
一行输出最后一个被删掉的数的原始下标位置。
输入样例:
8
输出结果:
6
说实话,当时看到这个的时候,发现很熟悉,因为这就是一个约瑟夫环的问题,但是没练习过,所以不会写,后来看了下别人的提示,就按照自己的思路来写了,以下是代码内容,仅供参考:
import java.util.*;
public class Main{public static void main(String[] args){Scanner scanner = new Scanner(System.in);while (scanner.hasNext()) {int input = scanner.nextInt();int left = input;boolean flag[] = new boolean[input];//用来标记是否删除了这个数int num = 0;//用来计数int result = 0;for (int i = 0; i < input; i++) {num++;if (!flag[i]) {if (num % 3 == 0) {flag[i] = true;left--;// System.out.println(i+" out");}if (left == 1) {break;}} else {num--;}if (i + 1 == input) {i = -1;}}for (int j = 0; j < input; j++) {//找出最后那个数if (!flag[j]) {result = j;break;}}System.out.println(result);} }
}
华为2016研发工程师编程题---删数相关推荐
- 牛客网--蘑菇街2016研发工程师编程题
牛客网--蘑菇街2016研发工程师编程题 第一题: 搬圆桌 时间限制:1秒 空间限制:32768K 现在有一张半径为r的圆桌,其中心位于(x,y),现在他想把圆桌的中心移到(x1,y1).每次移动一步 ...
- 网易2016研发工程师编程题--完全解析
前言 之前做公司的真题,碰到动态规划,还有一些数学性质的题目比较多一点.网易2016研发工程师编程题跟之前做的题目有很大的不同,不仅涉及到二叉树的编码,还涉及到图的广度遍历,最后还有一个快排.可以说这 ...
- 股票交易日(动态规划)----美团2016研发工程师编程题(二)
[编程题] 股票交易日 在股市的交易日中,假设最多可进行两次买卖(即买和卖的次数均小于等于2),规则是必须一笔成交后进行另一笔(即买-卖-买-卖的顺序进行).给出一天中的股票变化序列,请写一个程序计算 ...
- 血型遗传检测(pair原来没有先后顺序)----去哪儿2016研发工程师编程题
[编程题] 5-血型遗传检测 血型遗传对照表如下: 父母血型 子女会出现的血型 子女不会出现的血型 O与O O A,B,AB A与O A,O B,AB A与A A,O B,AB A与B A,B,AB, ...
- 网易2016研发工程师编程题:扫描透镜
扫描透镜 在N*M的草地上,小明种了K个蘑菇,蘑菇爆炸的威力极大,小华不想贸然去闯,而且蘑菇是隐形的.只 有一种叫做扫描透镜的物品可以扫描出隐形的蘑菇,于是他回了一趟战争学院,买了2个扫描透镜,一个 ...
- 网易2016研发工程师编程题 - 题解
题目链接: 第一部分,点这儿: 第二部分,点这儿. 第一题:小易的升级之路 题目: 小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依 ...
- 算法面试题-美团点评2016研发工程师编程题(二)-字符编码(哈夫曼树)
题目: 解析:这个题目的关键问题是"最短的编码",这里可以知道应该是Huffman编码了. 哈夫曼编码是一种可变字长编码,也就是说对于不同的字符的编码不是定长的,所以才能比定长编码 ...
- 蘑菇街2016研发工程师编程题--回文串
题目 给定一个字符串,问是否能通过添加一个字母将其变为回文串. 输入描述: 一行一个由小写字母构成的字符串,字符串长度小于等于10. 输出描述: 输出答案(YES\NO). 示例1 输入 coco 输 ...
- 华为中级编程题目python_华为研发工程师编程题2019(python3)
第一题 有这样一道智力题:"某商店规定:三个空汽水瓶可以换一瓶汽水.小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?"答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的 ...
最新文章
- 10年测试工程师首谈测试前景,如何25天进入滴滴大厂
- 如何让castle用connectionstring里的连接字符串?
- “Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported“解决方法
- Catch That Cow(POJ-3278)
- 关于一类docker容器闪退问题定位
- java 绘制sin函数图像_MATLAB基础学习之三维曲线的绘制
- java实现客服转接_Java微信公众平台开发(9) 关键字回复以及客服接口实现
- 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛——L题 建立火车站
- php重定向函数是什么,php中url重定向的方法
- 在UITableView中使用自动布局以获取动态单元格布局和可变的行高
- Excel闪退问题解决办法
- WMS仓储管理系统解决方案
- 小程序练习 - rawData和userInfo
- 计算机无法打印图片,电脑中打印机可以打印文档却无法打印图片如何解决
- python入门基础要点,入门决定没问题(初学者专属)
- HDU 2246 考研路茫茫——考试大纲
- 【教学类-06】20220119 VS python 20以内加减法(不重复)
- 关于美团、饿了么外卖优惠券公众号的设计思路
- 微信小程序项目实例——手势解锁
- 同源策略的限制,没有同源策略会怎么样?
热门文章
- 暄桐教练日课·21天《灵飞经》报名啦
- java SpringBoot 对接支付宝 APP支付 证书模式及非证书模式
- vi使用手册(zt)
- 关于用LaTeX写英文论文
- php 图片 圆角,PHP将图片处理成圆角
- Mac下安装Maven
- mac 下netstat理解
- 2015.05.05,外语,读书笔记-《Word Power Made Easy》 15 “如何谈论事情进展” SESSION 42...
- !EOF简单说明,常用来结束while循环
- 个人网站个人主页的建立