句子反转
时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。
比如:
(1) “hello xiao mi”-> “mi xiao hello”
输入
输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个字符)
输出
对于每个测试示例,要求输出句子中单词反转后形成的句子

样例输入
hello xiao mi
样例输出
mi xiao hello

import java.util.Scanner;public class Main {public static void main(String[] arg) {Scanner scan = new Scanner(System.in);while (scan.hasNext()) {String str = scan.nextLine();String[] ss = str.split(" ");for (int i = str.length() - 1; i >= 0; i--) {System.out.println(ss[i]);}}scan.close();}}

树的高度
时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
现在有一棵合法的二叉树,树的节点都是用数字表示,现在给定这棵树上所有的父子关系,求这棵树的高度
输入
输入的第一行表示节点的个数n(1<=n<=1000,节点的编号为0到n-1)组成,
下面是n-1行,每行有两个整数,第一个数表示父节点的编号,第二个数表示子节点的编号
输出
输出树的高度,为一个整数

样例输入
5
0 1
0 2
1 3
1 4
样例输出
3

import java.util.Arrays;
import java.util.Scanner;public class Main {static int maxDepth;private static void init(int[][] matrix,int n) {for (int i = 0; i < n; i++) {matrix[i][0] = -1;matrix[i][1] = -1;}}public static void main(String[] arg) {Scanner scan = new Scanner(System.in);while (scan.hasNext()) {maxDepth = 0;int n = scan.nextInt();int[][] matrix = new int[n][2];init(matrix,n);int[] fathers = new int[n];Arrays.fill(fathers,-1);for (int i = 0,s = n - 1; i < s; i++) {int x = scan.nextInt();int y = scan.nextInt();if (matrix[x][0] == -1) {matrix[x][0] = y;}else {matrix[x][1] = y;}fathers[y] = x;}int root = -1;for (int i = 0; i < n; i++) {if (fathers[i] == -1) {root = i;}}dfs(matrix,root,1);System.out.println(maxDepth);}scan.close();}private static void dfs(int[][] matrix,int father,int depth) {if (matrix[father][0] == -1 && matrix[father][1] == -1) {maxDepth = Math.max(maxDepth,depth);//System.out.println(depth);return;}for (int i = 0; i < 2; i++) {if (matrix[father][i] != - 1) {dfs(matrix,matrix[father][i],depth +1);}}}}

电话号码分身
时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
继MIUI8推出手机分身功能之后,MIUI9计划推出一个电话号码分身的功能:首先将电话号码中的每个数字加上8取个位,然后使用对应的大写字母代替
(”ZERO”, “ONE”, “TWO”, “THREE”, “FOUR”,
“FIVE”, “SIX”, “SEVEN”, “EIGHT”, “NINE”),
然后随机打乱这些字母,所生成的字符串即为电话号码对应的分身。
输入
第一行是一个整数T(1<=T<=100)表示测试样例数;接下来T行,每行给定一个分身后的电话号码的分身(长度在3到10000之间)。
输出
输出T行,分别对应输入中每行字符串对应的分身前的最小电话号码(允许前导0)。

样例输入
4
EIGHT
ZEROTWOONE
OHWETENRTEO
OHEWTIEGTHENRTEO
样例输出
0
234
345
0345


import java.util.Arrays;
import java.util.Scanner;public class Main {static char[] numbers = {'2', '3', '4', '5', '6', '7', '8', '9', '0', '1'};public static void main(String[] arg) {Scanner scan = new Scanner(System.in);String t = scan.nextLine();int test = Integer.parseInt(t);while (test > 0) {--test;String str = scan.nextLine();char[] telephone = solve(str);System.out.println(telephone);}scan.close();}private static char[] solve(String str) {int len = str.length();int[] letters = new int[126];for (int i = 0; i < len; i++) {++letters[str.charAt(i)];}int[] num = new int[10];num[0] = letters['Z'];num[2] = letters['W'];num[4] = letters['U'];num[6] = letters['X'];num[8] = letters['G'];num[3] = letters['H'] - num[8];num[5] = letters['F'] - num[4];num[7] = letters['S'] - num[6];num[1] = letters['O'] - num[0] - num[2] - num[4];num[9] = letters['I'] - num[5] - num[6] - num[8];StringBuilder sb = new StringBuilder();for (int i = 0; i < 10; i++) {while (num[i] > 0) {sb.append(numbers[i]);--num[i];}}String telephone = sb.toString();char[] arr = telephone.toCharArray();Arrays.sort(arr);return arr;}
}

小米2017校园招聘笔试题相关推荐

  1. 爱奇艺2017校园招聘笔试题

    成长值计算 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536KB:其他语言 589824KB 题目描述: 爱奇艺累计有2000万会员,为了提高会员权 ...

  2. 网易2017校园招聘笔试题 优雅的点

    小易有一个圆心在坐标原点的圆,小易知道圆的半径的平方.小易认为在圆上的点而且横纵坐标都是整数的点是优雅的,小易现在想寻找一个算法计算出优雅的点的个数,请你来帮帮他. 例如:半径的平方如果为25 优雅的 ...

  3. 网易2017校园招聘笔试题 跳石板

    小易来到了一条石板路前,每块石板上从1挨着编号为:1.2.3--. 这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X ...

  4. 去哪儿2017校园招聘笔试题

    import java.util.Scanner;/*** filename extension* 时间限制:C/C++语言 1000MS:其他语言 3000MS* 内存限制:C/C++语言 6553 ...

  5. 去哪儿2017校园招聘笔试题——获得文件扩展名filename extension

    1. 题目 Please create a function to extract the filename extension from the given path,return the extr ...

  6. 去哪儿2017校园招聘笔试题——统计字符串中最先出现三次的字符

    1. 题目 统计字符 给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符. 输入 qywyery23tdd 输出 y 2. 分析 和所有统计英文字符一样,依次利用Hash算法将 ...

  7. 最强大脑 奇虎360 2017校园招聘笔试题

    题目:最强大脑  时间限制:C/C++语言 1000MS:其他语言 3000MS  内存限制:C/C++语言 65536KB:其他语言 589824KB  题目描述:  小B乘火车和朋友们一起在N市到 ...

  8. 京东2017校园招聘笔试题 幸运数

    题目描述: 4和7是两个幸运数字,我们定义,十进制表示中,每一位只有4和7两个数的正整数都是幸运数字.前几个幸运数字是:4,7,44,47,74,77,444,447- 现在输入一个数字k,输出第k个 ...

  9. 搜狗2017校园招聘笔试题

    第二题 一个字符串的最大回文前缀长度 题目描述: 求一个字符串的最大回文前缀长度.回文是指正反方向读起来都一样的字符串,比如"abcdcba"就是一个回文. 输入 一个文本文件,至 ...

  10. 小米2013校园招聘笔试题

    题目:一个数组里,除了三个数是唯一出现的,其余的都出现偶数个,找出这三个数中的任一个.比如数组元素为[1, 2,4,5,6,4,2],只有1,5,6这三个数字是唯一出现的,我们只需要输出1,5,6中的 ...

最新文章

  1. leetcode算法题--Is Subsequence
  2. Hystrix默认超时时间
  3. Qt Creator代码重构
  4. flink的datastream进行join操作没有输出结果一例
  5. vs code linux opencv,ubuntu+vscode 测试运行opencv
  6. sensei鼠标测试软件,'黑科技'传感器打造出的FPS利器 - 赛睿Sensei 310 鼠标
  7. 玩下软工项目,第一轮--全局Context的获取,SQLite的建立与增删改查,读取用户通话记录信息...
  8. 【基础问题】微信小程序 - 腾讯云 - 一站式方案 - PHP - wafer 和 wafer2的区别和wafer2的实践
  9. C++:求数字i以后的n个素数
  10. [人工智能]手语识别转文字落地深圳医院,厉害了我的腾讯
  11. 【registry】 javax.el.ExpressionFactory.newInstance()Ljavax/el/ExpressionFactory;
  12. CSS魔法堂:小结一下Box Model与Positioning Scheme
  13. 老男孩python第一天笔记
  14. 20145210 20145226实验一
  15. python:读取mat文件
  16. 数据结构实训之商店存货管理系统(c+html+pyhon)
  17. MFC--获取字符串的像素尺寸
  18. 40个笑到抽筋的神回复,哈哈哈哈哈...
  19. android 全局剪贴板,Android剪贴板详解
  20. 输入一个三位数,如果是水仙花数,输出YES,否则的话,输出NO;

热门文章

  1. phpmail通过qq发邮箱失败_PHP下利用PHPMailer配合QQ邮箱下的域名邮箱发送邮件
  2. 信息与计算机科学学全国排名,中国信息与计算科学专业高校排名
  3. N63043-郝子轩-第一周
  4. SAN光纤交换机常用命令整理(转)
  5. directadmin安装
  6. Excel画函数图像
  7. 桌面小部件Widget
  8. Java 编写的 坦克大战小游戏
  9. 走,去出海,一起“Copy to World” | 36氪出海行业报告
  10. “用户体验及可用性测试”前三章:读书笔记