最简单的难题——游戏英雄升级潜力评估

问题描述

小U在一款挂机游戏中拥有n个英雄。游戏中有一种历练升级机制,每天可以选择两个英雄进行历练,如果两位英雄的等级相同,则他们的等级都不会改变。如果英雄等级不同,那么等级较高的英雄会增加1级,而等级较低的英雄则保持不变。

小U希望至少有一个英雄能够达到2000000000000000级,他想知道有多少英雄有潜力通过历练达到这个等级。


测试样例

样例1:

输入:n = 5 ,u = [1, 2, 3, 1, 2]

输出:3

样例2:

输入:n = 4 ,u = [100000, 100000, 100000, 100000]

输出:0

样例3:

输入:n = 6 ,u = [1, 1, 1, 2, 2, 2]

输出:3

我的题解:

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

public class Main {
    public static int solution(int n, int[] u) {
        //感觉不太对的样子,找到最小的数比其高的数有多少个
        int min = Integer.MAX_VALUE;
        //找到最小值
        for(int i = 0; i < u.length; i++ ){
            min = u[i] < min ? u[i] : min;
        }
        
        //找到比其大的数有多少个
        int count = 0;
        for(int target : u){
            count += target > min ? 1 : 0; 
        }

        return count;
    }

    public static void main(String[] args) {
        System.out.println(solution(5, new int[]{1, 2, 3, 1, 2}) == 3);
        System.out.println(solution(4, new int[]{100000, 100000, 100000, 100000}) == 0);
        System.out.println(solution(6, new int[]{1, 1, 1, 2, 2, 2}) == 3);
    }
}

没问题,评级标签为难题,不理解呦......我也是做出难题的人了

相关推荐
LabVIEW开发5 分钟前
LabVIEW 连接板:28 个端子怎么排,优先级怎么定
java·算法·labview
天天被压力38 分钟前
【A股分钟级高频数据完全手册 #07】北交所历史分钟K线接口:京市Pro版分时批量
java·人工智能·python
天天被压力44 分钟前
【A股分钟级高频数据完全手册 #08】股票日、分时数据接口对比:普通分时与Pro版差异实测
java·人工智能·python
特立独行的猫A1 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
金銀銅鐵1 小时前
从一个类名到一张类图:用反射自动生成 PlantUML
java·后端·uml
严肃小白兔2 小时前
MATLAB 数值计算中的精度与误差问题:浮点运算、误差传播与数值稳定性
人工智能·算法·matlab
nice_lcj5202 小时前
Java 并发容器入门:ConcurrentHashMap、CopyOnWriteArrayList、阻塞队列
java·面试·并发编程·阻塞队列·concurrenthashmap·copyonwritearraylist
微小的鱼2 小时前
Linux的渲染与显示系统链路
android·java·linux
青少儿编程课堂2 小时前
蓝桥杯青少组图形化省考报名倒计时·全国青少年信息素养大赛·电子学会图形化考级:校园黑白棋人机对战解析
c++·python·算法·bfs·信息学竞赛
若亦_3 小时前
Java中关于this的三种用法
java·开发语言·intellij-idea