蘭橋杯 2023 第 14 回省大会 本当の質問 - 金属製錬 - 問題解決

目次

蘭橋杯 2023 第 14 回省大会の実際の質問 - 金属製錬

質問の説明

入力フォーマット

出力フォーマット

サンプル入力

サンプル出力

ヒント

【アイデアの分析】

【コード】


上手に書くことができると思われる場合は、QQ グループ 907575059 に参加してください。

蘭橋杯 2023 第 14 回省大会の実際の質問 - 金属製錬

制限時間: 3 秒 メモリ制限: 320MB 送信数: 5996 解決数: 2927

質問の説明

シャオランは、通常の金属Oを特殊な金属Xに精錬するために使用される魔法の炉を持っています。この炉には変換率と呼ばれる属性 V があり、V は正の整数であり、通常のゴールドを V 個消費することを意味します。

属性Oは特殊な金属Xを正確に精錬することができます。通常の金属Oの数がVより少ない場合、精錬は続行できません。

ここで、N 個の製錬レコードが与えられます。各レコードには 2 つの整数 A と B が含まれています。これは、A の通常の金属 O が今回投資され、B の特殊な金属 X が最終的に製錬されたことを意味します。各レコードは独立しています

、これは、前回消費されなかった通常の金属Oが次の製錬で蓄積されないことを意味します。

これら N 件の製錬記録に基づいて、変換率 V の最小値と最大値がいくらになるかを推測してください。この質問は、評価データに解がないことが保証されます。

入力フォーマット

最初の行には、製錬レコードの数を表す整数 N が含まれています。

次に、N 行を入力します。各行には、タイトルに記載されている意味を持つ 2 つの整数 A と B が含まれます。

出力フォーマット

V の可能な最小値と最大値をそれぞれ表す 2 つの整数をスペースで区切って出力します。

サンプル入力

コピー

3 
75 3 
53 2 
59 2

サンプル出力

コピー

20 25

ヒント

V = 20 の場合、⌊75/20⌋ = 3、⌊ 53/20 ⌋ = 2、⌊ 59/20 ⌋ = 2 があり、これはすべての製錬記録と一致していることがわかります。

V = 25 の場合、⌊75/25⌋ = 3、⌊ 53/25 ⌋ = 2、⌊ 59/25 ⌋ = 2 があり、これはすべての製錬記録と一致していることがわかります。

また、20 より小さい、または 25 より大きい修飾された V 値は見つかりません。

【アイデアの分析】

あらゆる可能性の中から最大の可能性と最小の可能性を見つけることです。最大可能性の計算。分(a/b)

最小可能性の数学。最大(a/(b+1)+1)

【コード】

package LQB;

import java.util.Scanner;

/**
 * @ProjectName: study3
 * @FileName: Ex6
 * @author:HWJ
 * @Data: 2023/9/18 20:58
 */
public class Ex6 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int min = Integer.MAX_VALUE;
        int max = Integer.MIN_VALUE;
        for (int i = 0; i < n; i++) {
            int a = input.nextInt();
            int b = input.nextInt();
            min = Math.min(a / b, min);
            max = Math.max((a / (b + 1) + 1), max);
        }
        System.out.println(max + " " + min);
    }
}

おすすめ

転載: blog.csdn.net/weixin_73936404/article/details/132996869