蓝桥杯 19717 挖矿java

java 复制代码
import java.util.Scanner;

public class Main {
    public static void solve() {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        int m = sc.nextInt();
        
        int s = 0;
        int[] l = new int[m + 1];
        int[] r = new int[m + 1];
        //初始化,没有矿就是0
        for (int i = 0; i < n; ++i) {
            int x = sc.nextInt();
            if (Math.abs(x) <= m && x < 0) {
                l[-x]++;
            } else if (Math.abs(x) <= m && x > 0) {
                r[x]++;
            } else if (x == 0) {
                s++;
            }
        }
        //计算前缀和
        for (int i = 1; i <= m; ++i) {
            l[i] += l[i - 1];
            r[i] += r[i - 1];
        }
        
        int ans = Math.max(r[m], l[m]);//不调转方向的数量
        for (int i = 1; i <= m / 2; ++i) {
            int sr = r[i] + l[m - i * 2];
            int sl = l[i] + r[m - i * 2];
            ans = Math.max(ans, Math.max(sr, sl));
        }
        
        ans += s;
        System.out.println(ans);
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int t = 1;
        while (t-- > 0) {
            solve();
        }
        
        sc.close();
    }
}
相关推荐
apcipot_rain21 分钟前
C++转Java日记(04)
java·开发语言·c++
NEFU_Jyj1 小时前
牛客周赛R168
算法
特立独行的猫A1 小时前
我给女儿写了个打字练习:一边敲键盘,一边把小学英语单词记牢
java·后端·python
云和数据.ChenGuang2 小时前
LangGraph 异步 Node 的设计与写法实践
开发语言·人工智能·python·机器学习·php
憧憬成为java架构高手的小白2 小时前
LangGraph4j 实战(下)
java
天诰3 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
蜗牛一步步往上爬5 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
这个昵称不容易6 小时前
SpringBoot「衣依」服装销售平台:144个Java文件180个接口,从挑衣服到收货评价整条链路都在
java·springboot·毕设
计算机毕设定制辅导-无忧学长7 小时前
《基于微信小程序的居家医疗陪护预约系统设计与实现》
java·spring boot·微信小程序·uniapp·居家医疗陪护预约系统
张张123y7 小时前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent