長さAの窓に長さBのカーテン2枚を取り付けたときに、隠されていない部分の最小値を求める問題です。
縦方向には十分な長さがあるカーテン、ということで、横方向のみを考えます。
提出
a, b = map(int, input().split())
ans = 0
if a >= b * 2:
ans = a - b * 2
else:
ans = 0
print(ans)
A,Bの整数が与えられるので、a,bに代入します。
aの長さが「b×2」より大きいかどうかで場合分けします。
大きい場合、aからカーテン2枚分の数字を引きます。
「b×2」より小さい場合、カーテンで完全に隠すことができるため、無条件で0になります。
split()メソッド
split()メソッドは、区切り文字を指定して、文字列を分割します。
区切り文字を指定しない場合、空白、タブ、改行で分割されます。
str.split("区切り文字")
map()関数
map()関数は、イテラブル(リストやタプルなど)の各要素に関数の処理を適用します。
map(関数、イテラブル)
他の解法として、max()を使うものがあります。
提出
a, b = map(int, input().split())
ans = max(a - 2 * b, 0)
print(ans)
完全に隠すことができる場合、「a-2×b」が0以下になるので大きい方を出力すればいいということですね。
max()関数
max()関数は、配列内の最大値を取得します。
max(配列)