【笔试】敏感词替换-携程旅游2020秋招笔试第一场
描述
(匹配条件全排列)
输入三行
替换字符串
被替换部分,根据全排列进行匹配
解题思路
import java.util.*;/*** @Author bennyrhys* @Date 2020-09-08 19:44* jack* i love jack,jack love me* you* i love you,you love me*/
public class T42 {private static StringBuilder sb = new StringBuilder();private static HashSet<String> hashSet = new HashSet<>();public static void main(String[] args) {Scanner sc = new Scanner(System.in);char[] carr1 = sc.nextLine().toCharArray();char[] carr2 = sc.nextLine().toCharArray();char[] carr3 = sc.nextLine().toCharArray();/*for (char c : carr1) {System.out.print(c);}System.out.println();for (char c : carr2) {System.out.print(c);}System.out.println();for (char c : carr3) {System.out.print(c);}*/fullSort(carr1, 0, carr1.length-1);// System.out.println(sb.toString());// String[] qarr = sb.toString().split("*");
// for (String s : qarr) {// System.out.println(s);
// hashSet.add(s);
// }
//
// for (String s : hashSet) {// System.out.println(s);
// }String res = "";String s = "";int len1 = carr1.length;int index = 0;for (int i = 0; i < carr2.length - len1 + 1; i++) {s = String.valueOf(carr2).substring(i, i+len1);//System.out.println(s);if (hashSet.contains(s)) {// System.out.println(s+"===");/*int flag = 0;while (flag < carr3.length) {System.out.println(carr3[flag]);carr2[i] = carr3[flag++];}*/res += String.valueOf(carr3);i = i + len1-1;}else {// res += String.valueOf(carr2[i]);res += carr2[i];index = i;// System.out.println(carr2[i]);}}if (index < carr2.length) {res += String.valueOf(carr2).substring(index+1, carr2.length);}System.out.print(res);//jack//i love jack,jack love me//you}// 全排列private static void fullSort(char[] carr , int l, int r) {if (l == r) {/* for (char c : carr) {sb.append(c);//System.out.println(c);}sb.append('*');*///System.out.println();
// System.out.println(String.valueOf(carr));hashSet.add(String.valueOf(carr));}for (int i = l; i <= r; i++) {swap(carr, i, l);fullSort(carr, l+1, r);swap(carr, l, i);}}// 交换private static void swap(char[] carr, int i, int l) {char temp = carr[i];carr[i] = carr[l];carr[l] = temp;}
}
【笔试】敏感词替换-携程旅游2020秋招笔试第一场相关推荐
- 恒生2020秋招笔试答案及详解
恒生2020秋招笔试试题 一.不定项选择 1.D,循环链表的主要优点是从表中任一结点出发都能访问到整个链表. 2.BCD,当父进程调用fork()创建子进程之后,(文件指针)变量在子进程中修改之后,父 ...
- 搜狗2020秋招笔试的一道算法题
搜狗2020秋招的一道算法题 有A,B,C三种样品,凑齐三个样品各一个就可以领取一个奖品.任意两个样品可兑换另一种样品,如AA可兑换一个B或一个C,AB可兑换一个C.输入ABC,问最多可以领取多少奖品 ...
- 【2022-10-12】携程JAVA开发秋招三轮面经
前两面技术面在线下, 第三面 HR 面是电话面,总体体验很好, tier 1 的级别 线下面, 在某个酒店,时间有点久了, 细节想不起来了 一面(9.28) 自我介绍 java 基础 有问 java ...
- CVTE笔试面试经验分享(硬件)—2020秋招
秋招流程: 投简历 --在线笔试 --技术面试一--技术面试二--综合面试 . 投简历 简历是直接在CVTE的校招网上投递的.然后可以选择面试城市和笔试时间. 在线笔试 简历筛选通过后就会通知进行线上 ...
- 2017年携程旅游校招Java研发笔试编程题(3个)
股票利润 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536KB:其他语言 589824KB 题目描述: 假如一个数组中存储了一个股票,在一天交易窗口 ...
- 携程研发方向秋招专业笔试
答案在问题后 1.对有18个元素的有序表R[1-18]进行二分查找,则查找A[3]的比较序列为: A.1,2,3 B.9,5,2,3 C.9,5,3 D.9,4,2,3 2.一棵二叉树的先序遍历序列为 ...
- 同程艺龙2020秋招笔试--Binrry(冰蕊)
有判断题.单选题.双选题,题目我考完就忘了...... 就记得一道编程题,如下: Java多线程 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536K ...
- 同程艺龙2020秋招笔试
1.选择题 下列哪个是操作系统? AIX为操作系统,AIX(Advanced Interactive eXecutive)是IBM基于AT&T Unix System V开发的一套类UNIX操 ...
- 【2020秋招笔试】百信银行:快速计算阶乘+快速幂
O ( l o g n ) O(logn) O(logn)时间复杂度的情况下计算 t ! t ! t! 和 a t a ^ t at. 快速幂计算在笔试中写过好多次了,万万没想到阶乘也可以. impo ...
最新文章
- 北大数学天才柳智宇:为何放弃麻省理工奖学金,选择出家为僧?
- 阻塞与非阻塞的IO网络读写
- 计算机更新80072f76,win10系统出现错误代码0x80072f76的解决方法
- 400+的考研复试线怎么玩???满屏都是400+?今年国家线会涨吗?
- 浏览器打不开网页,但是还可以聊qq?
- Python zip() 函数--多个迭代器取元素组合成一个新的迭代器
- PHP GZ压缩与解压
- 布局文件是如何被解析的?
- Ubuntu 16.04下安装VMware Tools
- 行人检测论文 -- ALFnet Learning Efficient Single-stage Pedestrian Detectors by Asymptotic Localization Fit
- 计算机条件求和函数,在excel中怎样根据多个条件进行求和
- 百胜中国拟2025年前开1000家Lavazza咖啡店​;别样肉客开始陆续进驻中国山姆会员商店 | 知消...
- 依赖缺失问题 CS0246	未能找到类型或命名空间名“SqlConnection”(是否缺少 using 指令或程序集引用?) CS1069 未能在命名空间“System.Data.SqlClient
- 宫廷秘方,给大家分享一下,祝大家身体健康
- code==200是什么意思
- fs.readFileSync 引入路径错误
- 台式计算机如何判断电源损坏,台式电脑电源坏了的表现有哪些
- MATLAB矩阵行列式
- 交通事故风险预测——《TA-STAN: A Deep Spatial-Temporal Attention Learning Framework...》
- properties配置文件中 不能输入中文
热门文章
- 讲的真详细!如何成为一个更好的Android开发者?成功入职腾讯
- 太极拳“引进落空”的学理研究
- c语言野指针导致问题,C语言进阶之路(三)----野指针的产生原因及解决办法
- 梦幻手游服务器维护摆摊公示时间,梦幻西游手游5月27日维护公告
- 95%置信区间计算-理解
- 【QGIS入门实战精品教程】10.2:QGIS中DEM三维显示方法
- 微信小程序 实现客服功能 和 ICON标签
- 点击免费领取视频拍摄和剪辑教程
- SQL Server 深入解析索引存储(堆)
- 根据指定的n,返回相应的斐波纳契数列。