[遇见时光]内推笔试-藏宝图-java实现

牛牛拿到了一个藏宝图,顺着藏宝图的指示,牛牛发现了一个藏宝盒,藏宝盒上有一个机关,机关每次会显示两个字符串 s 和 t,根据古老的传说,牛牛需要每次都回答 t 是否是 s 的子序列。注意,子序列不要求在原字符串中是连续的,例如串 abc,它的子序列就有 {空串, a, b, c, ab, ac, bc, abc} 8 种。

输入描述:
每个输入包含一个测试用例。每个测试用例包含两行长度不超过 10 的不包含空格的可见 ASCII 字符串。
输出描述:
输出一行 “Yes” 或者 “No” 表示结果。
输入例子:
x.nowcoder.com
ooo
输出例子:
Yes

下面java代码在牛客网上AC通过,我也因此拿到了网易面试通知;然而不复习的人不可能过面试!!!
 1 import java.util.Scanner;
 2 public class Main {
 3     public static String isSubString(String S,String T ){
 4         String SS=S;
 5         String TT=T;
 6         if (S.length()<T.length()||T.length()<0||T.equals(null)||S.length()>10||T.length()>10) {
 7             return "No";
 8         }
 9
10         int i=0;
11         for(;i<TT.length();i++){
12             char c= TT.charAt(i);
13             int l = SS.indexOf(String.valueOf(c));
14 //            System.out.println(l);
15             if (l>=0&&l<S.length()) {
16                 SS = SS.substring(l+1);
17             }else{
18                 return "No";
19             }
20         }
21         if (i ==T.length()&&SS.length()>=0) {
22             return "Yes";
23         }else {
24             return "No";
25         }
26     }
27
28     public static void main(String[] args) {
29         // TODO Auto-generated method stub
30         Scanner in = new Scanner(System.in);
31         String Str = in.nextLine();
32         String t = in.nextLine();
33         System.out.println(isSubString(Str, t));
34 //        System.out.println(isSubString("jkk", ""));
35 //        System.out.println(isSubString("", "o"));
36 //        System.out.println(isSubString("sb", "s"));
37 //        System.out.println(isSubString("sb", "bb"));
38 //        System.out.println(isSubString("xxxsbbbbbb", "ssb"));
39 //        System.out.println(isSubString("xxxsbbbbbb", "xb"));
40 //        System.out.println(isSubString("xxxmmmsbb0", "xmb0"));
41 //        System.out.println(isSubString("xxx", "xxxx"));
42     }
43
44 }
时间: 2024-08-02 16:12:54

[遇见时光]内推笔试-藏宝图-java实现的相关文章

WYYD2017内推笔试回顾

这次内推的笔试考试感觉就是挺杂的,考题没有区分大的方向.ios和研发工程师的题目没区别.编程题也是一样,就是顺序换了下,所以编程题也没有难度梯度的区分,有些不科学.扯这么多其实感觉还是自己的基础不扎实,得加油了. 下面回忆一下考到了什么. 选择题(单选和多选,2分×15题=30分) 这边只能大致回忆起一些知识点了 1.Linux下管道命令来统计for循环的次数会用到哪些指令? (多选)选项: cat.wc.grep.vi 2.解释和编译的比较,效率,是否生成本地文件,是否独立于机器等 3.B-数

【遇见时光】小米笔试-树的高度-java

思路:类似于层次遍历,用队列实现.每层结点进队列,末尾加入-1:再出队列,同时添加结点的子节点入队列,遇到-1则深度加1: java代码: 1 package test; 2 import java.util.ArrayList; 3 import java.util.Iterator; 4 import java.util.LinkedList; 5 import java.util.Queue; 6 import java.util.Scanner; 7 class Node{ 8 9 pu

网易2017校招内推笔试练习卷编程题1--1019.数字黑洞20

给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到 一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞"之称的6174,这个神奇的数字也叫Kaprekar常数. 例如,我们从6767开始,将得到 7766 - 6677 = 1089 9810 - 0189 = 9621 9621 - 1269 = 8352 8532 - 2358 = 6174 7641 - 1467 = 6174 ... ... 现给

网易2017校招内推笔试练习卷编程题2--出专辑

你作为一名出道的歌手终于要出自己的第一份专辑了,你计划收录 n 首歌而且每首歌的长度都是 s 秒,每首歌必须完整地收录于一张 CD 当中.每张 CD 的容量长度都是 L 秒,而且你至少得保证同一张 CD 内相邻两首歌中间至少要隔 1 秒.为了辟邪,你决定任意一张 CD 内的歌数不能被 13 这个数字整除,那么请问你出这张专辑至少需要多少张 CD ? 输入描述: 每组测试用例仅包含一组数据,每组数据第一行为三个正整数 n, s, L. 保证 n ≤ 100 , s ≤ L ≤ 10000 输出描述

2016奇虎360研发工程师内推笔试编程题:找镇长

挑选镇长 360员工桂最近申请了一个长假,一个人背着包出去自助游了. 路上,他经过了一个小镇,发现小镇的人们都围在一棵树下争吵.桂上前询问情况,得知小镇的人们正缺一个镇长,他们希望能选一个知名又公正的镇长,即,大家希望能选出一个人,所有人都认识他,但同时他不认识镇上除自己以外的其他人(在此,我们默认每个人自己认识自己).可是小镇里的人太多了,一下子大家谁也说服不了谁. “这简单啊.”桂表示.于是他一下子统计出来了镇上人们相互之间的认识关系,并且一下子找到了合适的镇长人选. 现在你手上也拿到了这样

58前端内推笔试2017(含答案)

1.填空题 (1)获取随机数的方法:Math.random (2)JS中奖一个变量前置强制改成浮点类型的方法:parseFloat(String) (3)根据id获取元素的原生js方法:getElementById(); (4)将文档声明为HTML5文档类型,需要在文档头添加:<!DOCTYPE html> (5)Chrome浏览器的私有样式前缀:-webkit- (6)CSS3设置圆角的属性名:border-radius (7)CSS中,#是根据id来选择元素的,.是根据类名来选择元素的.

2017 网易有道研发内推笔试编程题 8.17

15个选择题,每个2分,3个程序题,每个30.

360 内推笔试 - 挑选镇长

试题来源:http://www.nowcoder.com/question/next?pid=151724&qid=25196&tid=718946 360员工桂最近申请了一个长假,一个人背着包出去自助游了. 路上,他经过了一个小镇,发现小镇的人们都围在一棵树下争吵.桂上前询问情况,得知小镇的人们正缺一个镇长,他们希望能选一个知名又公正的镇长,即,大家希望能选出一个人,所有人都认识他,但同时他不认识镇上除自己以外的其他人(在此,我们默认每个人自己认识自己).可是小镇里的人太多了,一下子大家

链家秋招内推编程笔试题目

参加8.19的链家内推笔试,总体来说题目难度不大,20个选择题还有三道编程题. 选择题,里面有两道关于IP地址计算的题目,有点忘了,不知道最后的计算有没有问题,所以还需要复习学习完的知识, 因为不知道什么时候就会遇到相关的问题. 编程题,自我感觉,难度是偏简单的,如果不能达到两道AC,那就是不合格了. 1. 给定的一个1,2,3组成的数字序列,排成升序所需的最少交换次数 . 样例输入: 9 2 2 1 3 3 3 2 3 1 样例输出: 4 思路: 应使用贪心算法. 分析:先存入数组,然后记录有