【笔试】虾皮2022秋招提前批SER笔试

2023-10-27 21:50

本文主要是介绍【笔试】虾皮2022秋招提前批SER笔试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、重排字符串和数字
在这里插入图片描述

思路:就按照题目要求来写就好了,有一点需要注意的是,再对数字排序时候要考虑最极端的情况可能出现100位左右的数字,这个只能String存了,看到别人Long也过了,但应该是数据不严。排序时候由于是String,因此重新定义排序规则。
代码:

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param text_source string字符串 原始输入* @return string字符串*/public String char_and_num_return (String text_source) {text_source = text_source.replaceAll(" +"," ").trim(); if(text_source == null || text_source == "") return text_source;StringBuilder res = new StringBuilder();String []strs = text_source.split(" ");List<String> digist = new ArrayList<>();for(String str : strs){if(str.isEmpty() || str==" ") continue;if(str.charAt(0)>='0' && str.charAt(0)<='9'){digist.add(str);}else{res.append(str);res.append(" ");}}Collections.sort(digist,(a,b)->{if(a.length()==b.length()) return a.compareTo(b);return a.length()-b.length();});for(String str : digist){res.append(str);res.append(" ");}return res.toString().trim();}
}

2、成对的69
在这里插入图片描述
思路:类似括号匹配,用一个栈记录6,每遇到一个9则出栈一个6,如果此时没有6,就在前面插入一个6,最后看下栈中剩余多少6,就往最后插入多少个9。
代码:

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param S string字符串 * @return string字符串*/public String Paired69 (String S) {StringBuilder res = new StringBuilder();Stack<Character> s = new Stack<>();for(char c : S.toCharArray()){if(c=='6'){ //遇到6就push进栈s.push(c);}else{ //遇到9就出栈一个6,没有6则在前面插入6if(!s.isEmpty()) s.pop();else res.insert(0,'6');}res.append(c);}while(!s.isEmpty()){ //最后剩余的6往后面补9s.pop();res.append('9');}return res.toString();}
}

3、最小金额购买商品
在这里插入图片描述
思路:初始化两个数组记录每个位置花费的代价,正着找一遍连续上升序列的花费,再反正求一遍连续上升的序列花费,花费是记录在前缀和中的,最后对每个位置上的花费取最大值,累加所有的位置即可。至于取最大值,是因为一个位置需要同时考虑左右两边带来的影响,正着求的是上升,反正求的还是上升。
代码:

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param array int整型一维数组 * @return int整型*/public int cost (int[] array) {int f[] = new int[array.length];int r[] = new int[array.length];for(int i=0;i<array.length;i++){f[i]=1;r[i]=1;}for(int i=1;i<array.length;i++){if(array[i]>array[i-1]){f[i] = f[i-1]+1;}}for(int i=array.length-2;i>=0;i--){if(array[i]>array[i+1]){r[i]=r[i+1]+1;}}int res=0;for(int i=0;i<array.length;i++){res+=Math.max(r[i],f[i]);}return res;}
}

这篇关于【笔试】虾皮2022秋招提前批SER笔试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/288637

相关文章

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【秋招笔试】9.07米哈游秋招改编题-三语言题解

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 大厂实习经历 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收集 100+ 套笔试题,笔试真题 会在第一时间跟新 🍄 题面描述等均已改编,如果和你笔试题看到的题面描述

两道笔试题

“char a='\72'”是什么意思? 这么理解:\为转义字符,\072转义为一个八进制数072,也就是十进制数的58买一送一,将转义字符对照表也一并贴给你吧:转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) 008 \f 换页(FF) 012 \n 换行(LF) 010 \r 回车(CR) 013 \t 水平制表(HT) 009 \v 垂直制表(VT

华为23年笔试题

消息传输 题目描述 在给定的 m x n (1 <= m, n <= 1000) 网格地图 grid 中,分布着一些信号塔,用于区域间通信。 每个单元格可以有以下三种状态:  值 0 代表空地,无法传递信号;  值 1 代表信号塔 A,在收到消息后,信号塔 A 可以在 1ms 后将信号发送给上下左右四个方向的信号塔; 值 2 代表信号塔 B,在收到消息后,信号塔 B 可以在 2ms

实现的动态规划问题华为笔试题C++实现

秋招刷力扣题,我觉得我对动态规划不是熟练,在此处做总结 动态规划(Dynamic Programming,DP)算法通常用于求解某种具有最优性质的问题。在这类问题中,可能会有许多可行解,每一个解都对应一个值,我们希望找到具有最优值的解。我觉得最大的问题就是对问题的分解,分解后的问题与分解前的问题具有相同的决策机制,将决策机制进行抽象,最终可以得到对应的解; 动态规划中开始介绍的爬楼梯等问题,答

2018秋招C/C++面试题总结

博主从8月中旬开始大大小小面试了十几家公司,至今也许是告一段落吧,希望后面会有好结果,因此总结记录一些C/C++方向常见的问题。和大家一起学习! 参考了互联网的各种资源,自己尝试归类整理,谢谢~ 一、C和C++的区别是什么? C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构

某公司笔试编程题

参加了某公司编程题,这些题都来自牛客网,记录总结吧! 一、蛇形矩阵 题目描述 蛇形矩阵是有1开始的自然数依次排列成的一个上三角矩阵. 接口说明 void GetResult(int Num, int* pResult);输入参数:int Num :输入的正整数N输出参数:int *pResult: 指向放蛇形矩阵的字符串指针指针指向的内存区域保证有效 样例输入: 4

CVTE java web后台实习生笔试+技术一面总结

投的第一份简历,也可以说是第一次写笔试和参加面试。题在前面,总结在最后,努力不骗人。 笔试 题型:20道不定项选择题+2道算法题+1道架构设计题 选择题 选择题出的很全面,因为是不定项选择,一道题就可以考很多知识点。 当时做的时候以为笔试都是这么难,做完实验室同学告诉我这个算比较难的了,而且据我观察可能是跟春招找正式offer的一批难度的题。可能最后过的标准不一样吧。 选项信息量很大,

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

C++笔试强训12、13、14

文章目录 笔试强训12一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训13一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训14一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训12 一、选择题 1-5题 引用:是一个别名,与其被引用的实体公用一份内存空间,编译器不会给引用变量单独开辟新的空间。A错误 故选A。 A