2023 美团笔试题 0819

笔试时间:2023年08月19日 秋招

第一题

题目:小美的外卖订单编号

美团商家的订单发起时,订单编号最开始从 1 开始,后续每发起一个订单,订单编号便在上一订单编号的基础上 +1。为了防止订单号过大,商家还可以设置一个编号上限m,当订单编号超过m时,将又从 1 开始编号。小美想知道,当订单编号上限为m时,第x个订单编号是多少?将有q次询问。

输入描述

第一行输入一个整数q(1<=q<=50000)。接下来q行,每行两个整数m,x。

输出描述

q行,每行一个整数表示答案。

样例输入

4

2 3

5 17

8 2

4 4

样例输出

1

2

2

4

参考题解

如果可以整除,那么直接输出m。否则则是x%m。

C++:

#include <iostream>
using namespace std;

int main() {
    int q;
    cin >> q;
    for (int i = 0; i < q; i++) {
        int m, x;
        cin >> m >> x;
        if (x % m == 0) {
            cout << m << endl;
        } else {
            cout << x % m << endl;
        }
    }
    return 0;
}

Java:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int q = sc.nextInt();
        for (int i = 0; i < q; i++) {
            int m = sc.nextInt();
            int x = sc.nextInt();
            if (x % m == 0) {
                System.out.println(m);
            } else {
                System.out.println(x % m);
            }
        }
    }
}

Python:

q = int(input())

for _ in range(q):
    m,x = map(int, input().split())
    if x % m == 0: print(m)
    else:print(x%m)

第二题

题目:小美的加法

小美有一个长度为n的数组,她想将这个数组进行求和,即 sum=a1+a2+...+an。

小美可以使用一次魔法(也可以不使用),将其中一个加号变成乘号,使得sum最大。

求出最大的sum。

输入描述

第一行输入一个整数n。

第二行输入n个整数表示数组a。

输出描述

输出一个整数表示答案。

样例输入

6

1 1 4 5 1 4

样例输出

27

小美可以将 4 和 5 之间的加号改成乘号。

1 + 1 + 4 * 5 + 1 + 4 = 27

参考题解

枚举最大的删除位置即可。

C++:

#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;

int main() {
    int n;
    cin >> n;
    vector<int> a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }

    int res = -1e9;
    for (int i = 0; i < n - 1; i++) {
        res = max(res, -(a[i] + a[i + 1]) + a[i] * a[i + 1]);
    }

    int sum = 0;
    for (int i = 0; i < n; i++) {
        sum += a[i];
    }

    cout << sum + res << endl;
    return 0;
}

Java:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        int res = Integer.M

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

2023 秋招笔试题汇总解析 文章被收录于专栏

2023秋招各大笔试题汇总,c++,java,python多种语言分析,解答。

全部评论
第三题java输出不对吧....
1 回复 分享
发布于 2023-08-27 16:42 江苏
第二题java只能a一半啊
点赞 回复 分享
发布于 2023-09-01 19:06 湖北
第三题java输出不对吧....
点赞 回复 分享
发布于 2023-09-01 11:15 北京

相关推荐

2025年初,新的一年开始,我给自己暗暗打气,发誓今年一定要拿到offer。如今2025年即将结束,找工作仍然没有任何水花,如今的失意和落魄和年初信心满满的姿态形成鲜明对比,想必也是因为被社会毒打,认清现实了吧。先分享一下贴主的背景,本人女,本科末流985文科专业,后来保送到华五,成绩一直是班级第一,有过国奖,实习有多段头部大厂经历。发贴的直接原因是今天华为面试挂,在反思中有很多复杂的想法,包括对自身能力的怀疑、对面试官所提问题的不解、对大环境的无奈。贴主是一个说话温柔、不喜欢咄咄逼人、有点社恐的人(基本上算是人们眼中对小女生的刻板印象,所以在历次群面中基本全挂(看到大家争抢当leader、t...
在找内推的小虾米:感觉这一段经历和我好像啊,前段时间面了很多车企,面试项目经历各种被拷打,大多数都没过一面,最有希望拿offer的一个终面挂了把我干破防了,打电话给爸妈哭了一个多小时才缓过来。我也开始否定自己,否定自己的一切,包括性格,能力,成长经历。。。最后面了深圳的某家公司,面试官人都挺友好,提的问题有深度但找到切入点 ,最后hr也按岗位最高的标准给的offer,我才发现自己并没有这么不堪,只是我的能力和经验和之前的岗位要求不那么符合而已。帖主一定不要灰心,招聘的窗口期还有很长很长,保持自信扬长避短,一定有企业能发现你的闪光点,祝好。
我的求职进度条
点赞 评论 收藏
分享
评论
3
9
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务