BISHI53 [P1080] 国王游戏(简化版)


流程图

求解代码

java 复制代码
static class Minister{
        long a;
        long b;

        Minister(long a,long b){
            this.a = a;
            this.b = b;
        }
    }


    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));

        int n = Integer.parseInt(br.readLine().trim());

        String[] str = br.readLine().trim().split("\\s+");

        long a0 = Long.parseLong(str[0]);

        Minister[] ministers = new Minister[n];
        for(int i=0;i<n;i++){
            String[] ministerStr = br.readLine().trim().split("\\s+");
            long a = Long.parseLong(ministerStr[0]);
            long b = Long.parseLong(ministerStr[1]);

            ministers[i]=new Minister(a, b);

        }

        Arrays.sort(ministers,(x,y)->Long.compare(x.a*x.b, y.a*y.b));

        // 计算最大金币数
        long maxCoin = 0;
        long productA = a0; // 前序左手数的乘积(初始为国王的a0)
        for (Minister m : ministers) {
            // 当前大臣的金币数 = 前序乘积 / 当前b
            long coin = productA / m.b;
            // 更新最大金币数
            if (coin > maxCoin) {
                maxCoin = coin;
            }
            // 前序乘积 *= 当前大臣的a
            productA *= m.a;
        }

        out.println(maxCoin);
        out.flush();
        out.close();
        br.close();
    }
相关推荐
alexhilton1 天前
将应用迁移到Navigation 3:痛点、加班和紧急修复
android·kotlin·android jetpack
karry_k1 天前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k1 天前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
杉氧1 天前
Navigation Compose 深度实践:如何优雅地串联起你的全栈 App?
android·架构·android jetpack
SamDeepThinking1 天前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
雨白1 天前
指针与数组的核心机制
android
她的男孩2 天前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码2 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
黄林晴2 天前
Room 3.0 正式发布!包名彻底重构,KMP 成为核心主线
android·android jetpack