寝癖頭の解法

学習中の覚え書きを投稿、更新していきます。

C言語とPythonによる長方形の中の円

C言語Pythonによる長方形の中の円です。
長方形の中に円が含まれるかを判定するプログラムです。

・問題
 長方形の中に円が含まれるかを判定するプログラムを作成してください。
 次のように、長方形は左下の頂点を原点とし、右上の頂点の座標 (W,H) が与えられます。
 また、円はその中心の座標 (x,y) と半径 r で与えられます。

・入力される値
 5つの整数 W、H、x、y、r が空白区切りで1行に与えられます。

・期待する出力
 円が長方形の内部に含まれるなら Yes と、一部でもはみ出るならば No と1行に出力してください。

・条件
 −100≤x,y≤100
 0

/*
 ITP1_2_D : Circle in a Rectangle
 http://judge.u-aizu.ac.jp/
 C言語による長方形の中の円
 https://neguse-atama.hatenablog.com
*/
#include <stdio.h>
int main(void){
    int W,H,x,y,r;
    scanf("%d %d %d %d %d",&W,&H,&x,&y,&r);
    if((x-r>=0 && W-r>=x) && (y-r>=0 && H-r>=y)){
        printf("Yes\n");
    }else{
        printf("No\n");
    }
    return 0;
}

Pythonのバージョンは、3.x に対応します。

# ITP1_2_D : Circle in a Rectangle
# http://judge.u-aizu.ac.jp/
# Pythonによる長方形の中の円
# https://neguse-atama.hatenablog.com
W, H, X, Y, R = map(int,input().split())

if 0 <= X-R and X+R <= W and 0 <= Y-R and Y+R <= H:
	print("Yes")
else:
	print("No")

設問の出典は、プログラミング問題のオンライン採点システム「Aizu Online Judge(AOJ)」です。
http://judge.u-aizu.ac.jp/onlinejudge/
ITP1_2_D : Circle in a Rectangle