美团笔试2023-08-19

呜呜,太菜了只会三道题;

100% 100% 100% 0% 16.7%

希望能进面试

求佬给个3,4题的思路

1. 最大限制m,求超出m的x,取模即可:

```c++

int q;

cin >> q;

while(q--) {

int m,x;

cin >> m >> x;

int ans = x % m;

if(ans == 0) ans = m;

cout<<ans<<"\n";

```

2. 数组中的数字默认加法,你可以选两个数字,把他俩之间的加法变成乘法;

选则相乘最大的即可:爆int精度用long long即可;

```c++

#include <bits/stdc++.h>

using namespace std;

#define IOS ios_base :: sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr)

typedef long long ll;

#define int ll

const int N = 2e5+9;

int a[N];

signed main() {

IOS;

int n;

cin >> n;

for(int i=1; i<=n; i++) {

cin >> a[i];

}

int maxx = 0,pos = -1;

for(int i=1; i<n; i++) {

if(maxx < a[i] * a[i+1]) {

pos = i;

maxx = a[i] * a[i+1];

}

}

int ans = maxx;

for(int i=1; i<=n; i++) {

if(i == pos || i == pos+1) continue;

else ans += a[i];

}

cout<<ans<<"\n";

return 0;

}

```

3 . 给你个字符01串,定义价值为:最少的操作次数使得,0和1不相邻,如:111000101,变成101010101或者010101010两者取最少变化次数的方案即可;n <= 2000

```c++

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

const int N = 2e3+9;

char s[N];

int main() {

    scanf("%s",s+1);

    int len = strlen(s+1);

    int ans = 0;

    for(int i=1; i<len; i++) {

        int sum1 = 0,sum2 = 0;

        int s1 = 0,s2 = 0;

        for(int j=i; j<=len; j++) {

            if(j % 2 == 1) {

                if(s[j] == '0') s1++;

                if(s[j] == '1') s2++;

            } else {

                if(s[j] == '1') s1++;

                if(s[j] == '0') s2++;

            }

            ans += min(s1,s2);

        }

    }

    cout<<ans<<"\n";

    return 0;

}

```

4.给你一个数组a,求构造出符合条件的数组b的方案数;

条件: a[i] != b[i]即 b中的任何一项不能和a相等;

数组a的和与数组b的和相等,b中的数字全是正整数;

ans对1e9+7取模

写了个爆搜结果0% 。。。

5.把数组中的数字每一项都变为众数所需要的最小次数是多少?

我只想到了,众数的个数是n或n-1,若sum % n == 0就是n,否则变成n-1个1,即可;

求大佬给个4,5题的思路和代码

#美团##美团笔试##笔试#

#美团##美团笔试##笔试#
全部评论
第五题思路差点,第四题不会dp啊
点赞 回复 分享
发布于 2023-08-19 21:21 北京
为什么我做的没有第四题
点赞 回复 分享
发布于 2023-08-19 21:36 浙江
第四题 前i个元素的和为j
点赞 回复 分享
发布于 2023-08-20 00:17 辽宁
第三题用的dp,开一个dp[n][n][2]的数组,第四题记忆化搜索本质上也是dp,开一个dp[n][sum]的数组,从最后一个元素向前找到第一个。第五题我也只过了16.67笑死
点赞 回复 分享
发布于 2023-08-20 07:08 美国
考虑一下荣耀吧,南京上海需求量大,hc多多,https://www.nowcoder.com/share/jump/219205181168962477
点赞 回复 分享
发布于 2023-08-20 08:47 江苏
大佬, 第三题思路是啥啊
点赞 回复 分享
发布于 2023-08-20 18:59 上海

相关推荐

最近又搬回宿舍了,在工位坐不住,写一写秋招起伏不断的心态变化,也算对自己心态的一些思考表演式学习从开始为实习准备的时候就特别焦虑,楼主一开始选择的是cpp后端,但是24届这个方向已经炸了,同时自己又因为本科非92且非科班,所以感到机会更加迷茫。在某天晚上用java写出hello&nbsp;world并失眠一整晚后选择老本行干嵌入式。理想是美好的,现实情况是每天忙但又没有实质性进展,总是在配环境,调工具,顺带还要推科研。而这时候才发现自己一直在表演式学习,徘徊在设想如何展开工作的循环里,导致没有实质性进展。现在看来当时如果把精力专注在动手写而不是两只手端着看教程,基本功或许不会那么差。实习的焦虑5月,楼主...
耶比:哲学上有一个问题,玛丽的房间:玛丽知道眼睛识别色彩的原理知道各种颜色,但是她生活在黑白的房间里,直到有一天玛丽的房门打开了她亲眼看到了颜色,才知道什么是色彩。我现在最大可能的减少对非工作事情的思考,如果有一件事困扰了我, 能解决的我就直接做(去哪里或者和谁吵架等等……),解决不了的我就不想了,每一天都是最年轻的一天,珍惜今天吧
投递比亚迪等公司10个岗位 > 秋招被确诊为…… 牛客创作赏金赛
点赞 评论 收藏
分享
10-15 09:13
已编辑
天津大学 soc前端设计
点赞 评论 收藏
分享
头像
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
评论
6
20
分享
牛客网
牛客企业服务