链接:https://www.nowcoder.com/questionTerminal/b53bda356a494154b6411d80380295f5
来源:牛客网

小易有一个长度为n的整数序列,a_1,...,a_n。然后考虑在一个空序列b上进行n次以下操作:
1、将a_i放入b序列的末尾
2、逆置b序列
小易需要你计算输出操作n次之后的b序列。

输入描述:
输入包括两行,第一行包括一个整数n(2 ≤ n ≤ 2*10^5),即序列的长度。
第二行包括n个整数a_i(1 ≤ a_i ≤ 10^9),即序列a中的每个整数,以空格分割。
输出描述:
在一行中输出操作n次之后的b序列,以空格分割,行末无空格。
示例1

输入

4
1 2 3 4

输出

4 2 1 3

这个题首先自己想到的是根据前一个结果推下一个结果,这就像是动态规划一样。先在上次结果中加入新元素,然后倒序。如下代码。但是超时了。

import java.util.*;
public class Main{public static void main(String[] args){Scanner sc=new Scanner(System.in);while(sc.hasNext()){int n=sc.nextInt();int[] a=new int[n];for(int i=0;i<n;i++) a[i]=sc.nextInt();int[] pre=new int[n];pre[0]=a[0];for(int i=2;i<=n;i++){pre[i-1]=a[i-1];int left=0,right=i-1;while(left<right){int tmp=pre[left];pre[left]=pre[right];pre[right]=tmp;left++;right--;}}for(int i=0;i<n;i++){if(i==0) System.out.print(pre[i]);else System.out.print(" "+pre[i]);}}}}

这题居然是个观察规律的题。网易真是,要么规律,要么特别难。

这题的规律是:从最后一个往前隔一个打印,作为结果的前半部分。后半部分是将剩下的数据从前往后打印。从前往后打印时要注意个数是奇数还是偶数。如果是奇数个,从后往前打印时会打印到第一个元素,偶数时值打印到第二个元素。也就是说,从前往后打印时,奇数时从第二个开始,偶数时从第一个开始。

import java.util.*;
public class Main{public static void main(String[] args){Scanner sc=new Scanner(System.in);while(sc.hasNext()){int n=sc.nextInt();int[] a=new int[n];for(int i=0;i<n;i++){a[i]=sc.nextInt();}for(int i=n-1;i>=0;i-=2){System.out.print(a[i]+" ");}for(int i=n%2;i<n-1;i+=2){if(i!=n-2)System.out.print(a[i]+" ");elseSystem.out.print(a[i]);}}}
}

转载于:https://www.cnblogs.com/xiaolovewei/p/8555021.html

网易编程题-操作序列相关推荐

  1. 网易编程题------操作序列

    题目描述 小易有一个长度为n的整数序列,a_1,...,a_n.然后考虑在一个空序列b上进行n次以下操作: 1.将a_i放入b序列的末尾 2.逆置b序列 小易需要你计算输出操作n次之后的b序列. 输入 ...

  2. 网易2018内推编程题——操作序列

    时间限制:2秒 空间限制:32768K 小易有一个长度为n的整数序列,a_1,...,a_n.然后考虑在一个空序列b上进行n次以下操作: 1.将a_i放入b序列的末尾 2.逆置b序列 小易需要你计算输 ...

  3. 2018网易笔试题-操作序列

    编程题] 操作序列 时间限制:2秒 空间限制:32768K 小易有一个长度为n的整数序列,a_1,...,a_n.然后考虑在一个空序列b上进行n次以下操作: 1.将a_i放入b序列的末尾 2.逆置b序 ...

  4. 2018校招笔试题——网易编程题跳石板

    题目与要求如下所示: [编程题] 跳石板 时间限制:1秒 空间限制:32768K 小易来到了一条石板路前,每块石板上从1挨着编号为:1.2.3....... 这条石板路要根据特殊的规则才能前进:对于小 ...

  5. 《网易编程题》计算糖果

    题目描述 A,B,C三个人是好朋友,每个人手里都有一些糖果,我们不知道他们每个人手上具体有多少个糖果,但是我们知道以下的信息: A - B, B - C, A + B, B + C. 这四个数值.每个 ...

  6. 《网易编程题》藏宝图

    题目描述 牛牛拿到了一个藏宝图,顺着藏宝图的指示,牛牛发现了一个藏宝盒,藏宝盒上有一个机关,机关每次会显示两个字符串 s 和 t,根据古老的传说,牛牛需要每次都回答 t 是否是 s 的子序列.注意,子 ...

  7. 《网易编程题》下厨房

    题目:牛牛想尝试一些新的料理,每个料理需要一些不同的材料,问完成所有的料理需要准备多少种不同的材料. 输入描述: 每个输入包含 1 个测试用例.每个测试用例的第 i 行,表示完成第 i 件料理需要哪些 ...

  8. 编程题--疯狂序列----京东大数据笔试

    1. 题目描述 东东从京京那里了解到有一个无限长的数字序列: 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, -(数字k在该序列中正好出现k次).东东想知道这 ...

  9. 【网易编程题】小易魔法王国采购魔法神器

    原题: 小易准备去魔法王国采购魔法神器,购买魔法神器需要使用魔法币,但是小易现在一枚魔法币都没有,但是小易有两台魔法机器可以通过投入x(x可以为0)个魔法币产生更多的魔法币. 魔法机器1:如果投入x个 ...

  10. 《网易编程题》疯狂队列

    小易老师是非常严厉的,它会要求所有学生在进入教室前都排成一列,并且他要求学生按照身高不递减的顺序排列.有一次,n个学生在列队的时候,小易老师正好去卫生间了.学生们终于有机会反击了,于是学生们决定来一次 ...

最新文章

  1. CentOS6.8下使用yum安装mysql,并远程登陆mysql
  2. 2019\Province_C_C++_B\试题B-年号字串
  3. 51nod1675-序列变换【莫比乌斯反演】
  4. 知乎高赞:有哪些你看了以后大呼过瘾的数据分析书?
  5. Webpack实战(六):如何优雅地运用样式CSS预处理
  6. 单因子测试用什么软件检查,如何进行单元测试?
  7. Selenium WebDriver 与 iOS 自动化测试 (做了一些初步的工具对比)
  8. 解决position:fixed抖动的问题
  9. Java 员工信息管理系统
  10. java日志脱敏_java 日志脱敏框架 sensitive,优雅的打印脱敏日志
  11. 企业级spring-boot案例-自定义Spring Boot Starter
  12. 后台添加mp4 php,织梦后台编辑器增加MP4视频上传功能的方法
  13. python装饰器抽丝拨茧
  14. Ubuntu18.04 RTL8169驱动更换RTL8168驱动
  15. 推荐8个堪称神器的网站!
  16. URL采集器-关键词采集
  17. Django和Vue搭建前后端分离框架
  18. Ubuntu安装Google Chrome,报NSS version的错误
  19. 魔兽地图编辑器实现英雄选择的四种方法
  20. svn发布网站(转载于badb0y)

热门文章

  1. 微信小程序 获取php值,微信小程序如何获取javascript里的数据
  2. 按值传递时 php必须复制值,PHP开发笔试题及答案(一)
  3. java中加号和append,请详细说一下java中append()的方法.
  4. python复制包到其他环境_Python虚拟环境导出包安装到另一台电脑的方法
  5. 虚拟机中qemu模拟开发板启动过程,使用nfs挂载根文件系统
  6. 以太网交换机工作原理
  7. 设计模式---命令模式(C++实现)
  8. 好友助力功能php开发,微开讲_帮助中心
  9. socket的java实现_Socket之Java实现普通版本
  10. [渝粤教育] 西南科技大学 电气CAD 在线考试复习资料