新米惑星管理官のあなたに新しい宇宙空間デザインの任務です。
宇宙空間は2次元で20x20とします。(0-19)x(0-19)
その中に惑星を10個ランダムに配置します。
ただし各惑星間の干渉を抑えるため距離を5より長く離してください。
(15個ぐらい配置できるとエリート管理官)
座標がわかれば出力形式は自由です。
サンプル解答は↓
宇宙空間は2次元で20x20とします。(0-19)x(0-19)
その中に惑星を10個ランダムに配置します。
ただし各惑星間の干渉を抑えるため距離を5より長く離してください。
(15個ぐらい配置できるとエリート管理官)
座標がわかれば出力形式は自由です。
サンプル解答は↓
import random def newP(p,r): #ランダムに作成した点が既存の点からr以内なら-1,-1にして返す x=random.randint(0,19) y=random.randint(0,19) for i in p: x1,y1=i if (x1-x)**2+(y1-y)**2<=r*r:return -1,-1 return x,y #作成メイン p=[] for i in range(10): x,y=-1,-1 while x==-1: x,y=newP(p,5) p+=[(x,y)] #画面表示初期化 mp=[] for i in range(20): mp+=["."*20] #追加 for i in p: x,y=i mp[y]=mp[y][:x]+"p"+mp[y][x+1:] #表示 for i in mp: print(i)