联通数字科技技术研发类笔试

都11月份了,莫名其妙收到了联通数科的笔试短信,想了想我好像投过山东的,也投过南京的嵌入式软开,也不知道这是哪家给我发的,有时间就做了。

限时70分钟,实际用时25分钟,但是开考30分钟后才能交卷,又等了5分钟。

  • 卷1:能力测试,10道选择题,小学数学应用题,分值20;
  • 卷2:基础技术知识,25道选择题,操作系统、计算机网络、数据库、SQL、数据结构与算法、Java等,分值50分;
  • 卷3:专业知识,5道多选题,包括数据库、正则表达式、Redis、Java、Nacos;
  • 卷4:在线编程,1道编程题,分值15。

编程题:

题目描述:
某班有10名同学,目前已经有9名同学成绩已经按照从低到高的次序进行排列,有1名同学成绩因在等分过程中,不小心遗漏掉,现要求输入该同学成绩后,依然保持有序。

输入描述:
分别输入原有的9名同学成绩
以及被遗漏的第10名同学成绩

输出描述:
排序后的10名同学成绩。
输入样例:
85 90 92 93 95 96 96 96 97
91

输出样例:
85 90 91 92 93 95 96 96 96 97

答案:

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    // 定义原有的9名同学成绩数组
    vector<int> scores(9);

    // 输入9名同学的成绩
    cout << "请输入9名同学的成绩(已排序):";
    for (int i = 0; i < 9; ++i) {
        cin >> scores[i];
    }

    // 输入被遗漏的第10名同学的成绩
    int missingScore;
    cout << "请输入第10名同学的成绩:";
    cin >> missingScore;

    // 将遗漏的成绩插入到数组中
    scores.push_back(missingScore);

    // 对成绩重新排序
    sort(scores.begin(), scores.end());

    // 输出排序后的成绩
    cout << "排序后的成绩:";
    for (const int& score : scores) {
        cout << score << " ";
    }
    cout << endl;

    return 0;
}

评价:我已经忘了山东省我投的什么岗了,但是要真是南京嵌软岗给我发的这个,你是一点嵌入式知识都没考啊,全是Java后端的八股!

#运营商笔面经互助#
全部评论
真的是服了,我投的基带,全是JAVA题
点赞 回复 分享
发布于 11-12 21:36 北京
这算法题这么搞笑?
点赞 回复 分享
发布于 11-14 22:21 黑龙江

相关推荐

4 收藏 评论
分享
牛客网
牛客企业服务