描述

(匹配条件全排列)
输入三行
替换字符串
被替换部分,根据全排列进行匹配

解题思路

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秋招笔试第一场相关推荐

  1. 恒生2020秋招笔试答案及详解

    恒生2020秋招笔试试题 一.不定项选择 1.D,循环链表的主要优点是从表中任一结点出发都能访问到整个链表. 2.BCD,当父进程调用fork()创建子进程之后,(文件指针)变量在子进程中修改之后,父 ...

  2. 搜狗2020秋招笔试的一道算法题

    搜狗2020秋招的一道算法题 有A,B,C三种样品,凑齐三个样品各一个就可以领取一个奖品.任意两个样品可兑换另一种样品,如AA可兑换一个B或一个C,AB可兑换一个C.输入ABC,问最多可以领取多少奖品 ...

  3. 【2022-10-12】携程JAVA开发秋招三轮面经

    前两面技术面在线下, 第三面 HR 面是电话面,总体体验很好, tier 1 的级别 线下面, 在某个酒店,时间有点久了, 细节想不起来了 一面(9.28) 自我介绍 java 基础 有问 java ...

  4. CVTE笔试面试经验分享(硬件)—2020秋招

    秋招流程: 投简历 --在线笔试 --技术面试一--技术面试二--综合面试 . 投简历 简历是直接在CVTE的校招网上投递的.然后可以选择面试城市和笔试时间. 在线笔试 简历筛选通过后就会通知进行线上 ...

  5. 2017年携程旅游校招Java研发笔试编程题(3个)

    股票利润 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536KB:其他语言 589824KB 题目描述: 假如一个数组中存储了一个股票,在一天交易窗口 ...

  6. 携程研发方向秋招专业笔试

    答案在问题后 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.一棵二叉树的先序遍历序列为 ...

  7. 同程艺龙2020秋招笔试--Binrry(冰蕊)

    有判断题.单选题.双选题,题目我考完就忘了...... 就记得一道编程题,如下: Java多线程 时间限制:C/C++语言 1000MS:其他语言 3000MS 内存限制:C/C++语言 65536K ...

  8. 同程艺龙2020秋招笔试

    1.选择题 下列哪个是操作系统? AIX为操作系统,AIX(Advanced Interactive eXecutive)是IBM基于AT&T Unix System V开发的一套类UNIX操 ...

  9. 【2020秋招笔试】百信银行:快速计算阶乘+快速幂

    O ( l o g n ) O(logn) O(logn)时间复杂度的情况下计算 t ! t ! t! 和 a t a ^ t at. 快速幂计算在笔试中写过好多次了,万万没想到阶乘也可以. impo ...

最新文章

  1. 北大数学天才柳智宇:为何放弃麻省理工奖学金,选择出家为僧?
  2. 阻塞与非阻塞的IO网络读写
  3. 计算机更新80072f76,win10系统出现错误代码0x80072f76的解决方法
  4. 400+的考研复试线怎么玩???满屏都是400+?今年国家线会涨吗?
  5. 浏览器打不开网页,但是还可以聊qq?
  6. Python zip() 函数--多个迭代器取元素组合成一个新的迭代器
  7. PHP GZ压缩与解压
  8. 布局文件是如何被解析的?
  9. Ubuntu 16.04下安装VMware Tools
  10. 行人检测论文 -- ALFnet Learning Efficient Single-stage Pedestrian Detectors by Asymptotic Localization Fit
  11. 计算机条件求和函数,在excel中怎样根据多个条件进行求和
  12. 百胜中国拟2025年前开1000家Lavazza咖啡店​;别样肉客开始陆续进驻中国山姆会员商店 | 知消...
  13. 依赖缺失问题 CS0246 未能找到类型或命名空间名“SqlConnection”(是否缺少 using 指令或程序集引用?) CS1069 未能在命名空间“System.Data.SqlClient
  14. 宫廷秘方,给大家分享一下,祝大家身体健康
  15. code==200是什么意思
  16. fs.readFileSync 引入路径错误
  17. 台式计算机如何判断电源损坏,台式电脑电源坏了的表现有哪些
  18. MATLAB矩阵行列式
  19. 交通事故风险预测——《TA-STAN: A Deep Spatial-Temporal Attention Learning Framework...》
  20. properties配置文件中 不能输入中文

热门文章

  1. 讲的真详细!如何成为一个更好的Android开发者?成功入职腾讯
  2. 太极拳“引进落空”的学理研究
  3. c语言野指针导致问题,C语言进阶之路(三)----野指针的产生原因及解决办法
  4. 梦幻手游服务器维护摆摊公示时间,梦幻西游手游5月27日维护公告
  5. 95%置信区间计算-理解
  6. 【QGIS入门实战精品教程】10.2:QGIS中DEM三维显示方法
  7. 微信小程序 实现客服功能 和 ICON标签
  8. 点击免费领取视频拍摄和剪辑教程
  9. SQL Server 深入解析索引存储(堆)
  10. 根据指定的n,返回相应的斐波纳契数列。