荣耀嵌入式软件开发工程师笔试4-25
公号:嵌入式未来
《嵌入式软件开发笔试与面试手册》:https://blog.nowcoder.net/zhuanlan/jvN8gj
《嵌入式软件笔试-2023年真题汇总》:https://blog.nowcoder.net/zhuanlan/0oDWVm
1、字符串转整数
实现一个把字符串转为整数的函数。自动删除开头无效空白字符,遇到第一个字符为"+"/"-”,则返回整数为正/负。若第一个字符不是数字和"+"/"-”,则直接返回0。超过32位的int范围,返回最大或最小值即可INT_MAX (2^31一1)或INT_MIN(-2^31)。
输入描述
输入为任意字符串
输出描述
返回数值
示例1
输入:
32
输出:
32
#include <iostream>
#include <string>
#include <climits>
using namespace std;
int solv(string s) {
if (s.empty()) {
return 0;
}
s.erase(0, s.find_first_not_of(' '));
if (s.empty()) {
return 0;
}
int flag = 1;
if (s[0] == '+' || s[0] == '-') {
if (s[0] == '-') {
flag = -1;
}
s.erase(0, 1);
}
long long res = 0;
for (char c : s) {
if (!isdigit(c)) {
break;
}
res = res * 10 + (c - '0');
}
res *= flag;
if (res > INT_MAX) {
return INT_MAX;
}
if (res < INT_MIN) {
return INT_MIN;
}
return (int)res;
}
int main() {
string s;
getline(cin, s);
cout << solv(s) << endl;
return 0;
}
2、概率计算
假设一个端口每毫秒收到的包的个数,是独立且同分布的。已知每毫秒收到的包的个数大于100个的概率为P_large。请求解以下事件的概率,并将概率输出: 连续N_meas毫秒之内,“某毫秒收到的包的个数大于100个”的毫秒的个数“大于等于N1且小于等于N2"的概率
输入描述
[P_large N_meas N1 N2], "["和"]"之内为输入。每个输入由空格隔开。
输出描述
以"1.2f"打印概率(不要打印或输出任何其它变量)
示例1
输入:
[0.75 50 30 40]
输出:
0.83
#include <iostream>
#include <iomanip>
#include <cmath>
#include <vector>
#include <sstream>
double combination(int n, int k) {
double result = 1;
for (int i = 1; i <= k; ++i) {
result *= (n - k + i) / static_cast<double>(i);
}
return result;
}
double binomial_probability(double p, int n, int k) {
return combination(n, k) * pow(p, k) * pow(1 - p, n - k);
}
int main() {
char bracket;
double P_large;
int N_meas, N1, N2;
std::cin >> bracket >> P_large;
std::cin.ignore();
std::cin >> N_meas;
std::cin.ignore();
std::cin >> N1;
std::cin.ignore();
st
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式软件笔试-24届真题汇总 文章被收录于专栏
本专栏主要发布嵌入式软件开发相关岗位2023年(2024届)的笔试真题(嵌入式软件开发、通用软件开发、C/C++软件开发、算法工程师、数据开发、测试开发等)主要是算法编程题,其中一些岗位笔试含有对应的选择题、填空题、简单题。

顺丰集团工作强度 381人发布