#去哪儿旅行秋招# 单选多选难度不高三道编程 0.6 0.8 0.2不是很满意第一道 60% 题目描述:给定int[] nums,打乱顺序使连接后的字典序排列最小 思路:比较用的是优先级队列,用一个列表不断对比插入 但是超时了,佬们是怎么答的第二道 80% 题目描述:给定int[] a、int[] b、一个数字m,问满足下列规则时最少选前几个,即求最小的x 选取规则是,a和b各自选取前x个 使最大和最大相乘 次大和次大相乘 相乘的结果需要满足>=m 思路:二分选择合适的分割点idx,两个优先级队列保存[0, idx],依次弹出相乘,判断是否>=m 依旧超时第三题 20% 题目描述:问的是一个字符串的最大的分割次数,要求分割后每段都需要 其某个字串至少重复2次 思路:boolean[][] dp[i][j]记录[i, j]是否是伪周期串+回溯 ①递推时,如果长度为奇数,需要满足所有字符相等; 如果长度为偶数,需要满足 周围字符的重复次数是偶数 && dp[ii][jj]==true ②回溯进行分割,找到了一个合适的k就可以立即返回 其实我觉得思路挺清晰的,然而结果就是很低,