【ABC165 A】「We Love Golf」を解く【Python3】

コンテスト一覧へ

 

ジャンボ高橋君が、目標の飛距離(Kの倍数)の達成が可能かどうかを判定する問題です。

提出
k = int(input())
a, b = map(int, input().split())

if a <= (b//k)*k:
    print("OK")
else:
    print("NG")

すべての入力は整数のため、整数のまま受け取ります。

b以下で、最大のkの倍数がa以上であれば、目標達成できるので「OK」を出力します。

それ以外は「NG」です。

split()メソッド

split()メソッドは、区切り文字を指定して、文字列を分割します。

区切り文字を指定しない場合、空白、タブ、改行で分割されます。

str.split(区切り文字)
map()関数

map()関数は、配列内のすべての要素に関数の処理を適用します。

map(関数、配列)

 

そのほか、for文を使っても解くことができます。

提出
k = int(input())
a, b = map(int, input().split())

for i in range(a, b+1):
    if i % k == 0:
        print("OK")
        exit()

print("NG")

for文を用いて、a〜bの範囲を一つずつ調べていきます(「b+1」は含まれない)。

kで割り切れるものであれば、「OK」を出力し、exit()でプログラムを終了させます。

すべて調べ終えても、プログラムが終了していない場合、「NG」を出力します。

range()関数

range()関数は、連続した数のリストを返します。

引数の指定が1つの場合、stopの指定になります。

引数stopの値は含まれず、最後の数字は「stop-1」です。

range(start,stop,step)

【ABC165】解説記事リスト

コンテスト一覧に戻る

コメントを残す

メールアドレスが公開されることはありません。