Java実装LeetCode 365ケトルの問題

365の質問ケトル

2リットルの容量があり、xとyリットルのケトルと水の無制限です。これら二つのやかんを使用することにより、zは正確リットルの水を得ることが可能かどうかを判断してください?

水の場合はZリットル、最後の2以上が満開に行われたケトルを使用してください。

あなたの許可を得て:

任意で満たされたボトル
空のケトルは、任意の
充填又は空になるまでさらにケトルにボトルから水を注ぐ
例1:(有名な「ダイからハード」の例)

入力:X = 3、Y = 5 、Z = 4
出力:真
例2:

入力:X = 2、Y = 6 、Z = 5
出力:偽

PS:
もしAがZ = X + B Y(A、B平坦化)、Gの最大公約数としてxとy、zは、すなわちZ%、G = 0、Gの整数倍でなければなりません!

class Solution {
    public boolean canMeasureWater(int x, int y, int z) {
   return z == 0 || (x + y >= z && z % gcd(x, y) == 0);
    }
    int gcd(int x, int y) {
        return y == 0 ? x : gcd(y, x % y);
    }

   
}
リリース1478元の記事 ウォンの賞賛10000 + ビュー182万+

おすすめ

転載: blog.csdn.net/a1439775520/article/details/104780691