2023 得物笔试题 0823

笔试时间:2023年8月23日 秋招

第一题

题目:开幕式排练

导演在组织进行大运会开幕式的排练,其中一个环节是需要参演人员围成一个环形。演出人员站成了一圈,出于美观度的考虑,导演不希望某一个演员身边的其他人比他低太多或者高太多。

现在给出n个参演人员的身高,问在他们站成一圈时,相邻演员的身高差的最大值至少是多少? 请你帮忙计算。

输入描述

输入包括两行,第一行有1个正整数,代表人数n。

第二行有n个空格隔开的正整数h表示第i个演员的身高。

数据保证2<=n<=10^5,1<=hi<=10^9。

输出描述

输出包括一个正整数,表示答案。

样例输入

5

2 1 1 3 2

样例输出

1

参考题解

将数组排序,然后声明一个新数组,均匀的向两边插入元素,最后遍历一遍数组求出最大值。

C++:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
   int n;
   cin>>n;
   vector<int> p(n);
   for(int i=0;i<n;i++) cin>>p[i];
   sort(p.begin(),p.end());
   vector<int> ans;
   ans.push_back(p[n-1]);
   int j=0;
   for(int i=n-2;i>=0;i--){
      if(j % 2==0) ans.push_back(p[i]);
      else ans.insert(ans.begin(),p[i]);
      j^=1;
   }
   int maxx=0;
   for(int i=0;i<n;i++)
       maxx=max(maxx,abs(ans[i]-ans[(i+1)%n]));
   cout <<maxx<< endl;
}

Java:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        List<Integer> p = new ArrayList<>();
        for (int i = 0; i < n; i++) {
            p.add(sc.nextInt());
        }
        Collections.sort(p);
        List<Integer> ans = new ArrayList<>();
        ans.add(p.get(n - 1));
        int j = 0;
        for (int i = n - 2; i >= 0; i--) {
            if (j % 2 == 0) {
                ans.add(p.get(i));
            } else {
                ans.add(0, p.get(i));
            }
            j ^= 1;
        }
        int maxx = 0;
        for (int i = 0; i < n; i++) {
            maxx = Math.max(maxx, Math.abs(ans.get(i) - ans.get((i + 1) % n)));
        }
        System.out.println(maxx);
    }
}

Python:

n = int(input())

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

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

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

全部评论

相关推荐

11-27 12:43
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
11-09 14:54
已编辑
华南农业大学 产品经理
大拿老师:这个简历,连手机号码和照片都没打码,那为什么关键要素求职职位就不写呢? 从上往下看,都没看出自己到底是产品经理的简历,还是电子硬件的简历? 这是一个大问题,当然,更大的问题是实习经历的描述是不对的 不要只是去写实习流程,陈平,怎么去开会?怎么去讨论? 面试问的是你的产品功能点,是怎么设计的?也就是要写项目的亮点,有什么功能?这个功能有什么难处?怎么去解决的? 实习流程大家都一样,没什么优势,也没有提问点,没有提问,你就不得分 另外,你要明确你投的是什么职位,如果投的是产品职位,你的项目经历写的全都是跟产品无关的,那你的简历就没用 你的面试官必然是一个资深的产品经理,他不会去问那些计算机类的编程项目 所以这种四不像的简历,在校招是大忌
点赞 评论 收藏
分享
评论
1
5
分享
牛客网
牛客企业服务