笔试时间:2023年7月29日 非凡计划  第一题  题目:将企鹅击落水中最小的力  牛牛发明了一款破冰行动的游戏,假设在河面上,有n块紧密相连的冰块。标号1-n。将一只企鹅放到任意一个标号为K的冰块上,现在通过打破一些冰块来使得企鹅掉落河中,然而他无法打破企鹅所踩的冰块k。每个冰块都有不同的强度Ai ,所以需要一个等于Ai的力来打破冰。当冰块(两侧的冰块都没有与河两岸连接时,则冰块会掉落到河中。冰块1和冰块4可以通过分别施加7和2的力来打破,此时企鹅所在的冰块2和冰块3一起掉落河中。所以企鹅将落下。所以,可以使企鹅掉落的最小力是2+7=9。  输入描述  第一行给出n,表示冰块的数量。第二行中,按顺序给出代表打破第i块冰块所需的力的Ai。题目保证企鹅所在的地方用-1表示,没有企鹅位于冰块1或冰块n的情况。3<=n<=2*10^5  1<=Ai<=10^9  输出描述  输出可以击落企鹅到水中的最小力。  样例输入     5   7 -1 6 2 5    样例输出     9    找到-1的位置且找到该位置坐标的最小值和右边的最小值之和即可。  参考题解  C++:  #include <iostream>#include <vector>int main() {    int n;    std::cin >> n;    std::vector<int> a(n);    for (int i = 0; i < n; i++) {        std::cin >> a[i];    }    for (int i = 0; i < n; i++) {        if (a[i] == -1) {            int p1 = i - 1, p2 = i + 1;            int min1 = INT_MAX, min2 = INT_MAX;            while (p1 >= 0) {                min1 = std::min(min1, a[p1--]);            }            while (p2 < n) {                min2 = std::min(min2, a[p2++]);            }            std::cout << min1 + min2 << std::endl;            return 0;        }    }    return 0;}  Java:  import java.util.*;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();        for (int i = 0 ; i < n ; i++) {            if (a[i] == -1) {                int p1 = i-1, p2 = i+1;                int min1 = Integer.MAX_VALUE, min2 = Integer.MAX_VALUE;                while (p1 >= 0) {                    min1 = Math.min(min1, a[p1--]);                }                while (p2 < n) {                    min2 = Math.min(min2, a[p2++]);                }                System.out.println(min1 + min2);                return;            }        }    }}  第二题  题目:数组的最小距离  小红定义两个数组之间的距离为    即每个位置的差的绝对值之和。小红现在可以进行任意次操作,选择任意数组的任意一个元素,使其乘以-1。小红希望最终两个数组的距离尽可能小。你能帮帮她吗?  输入描述  第一行输入一个正整数, 代表两个数组的长度。第二行输入n个
点赞 0
评论 0
全部评论

相关推荐

06-04 09:27
门头沟学院 Java
点赞 评论 收藏
分享
Vincent777...:实习经历可以考虑放上去,对于软件使用方面可以细化一些,比如调整为:熟悉基于LSDYNA的瞬态动力学仿真分析,熟悉基于WORKBENCH的结构拓扑优化
我的简历长这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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