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多种语言分析,解答。

查看5道真题和解析