Member 13732577 Ответов: 1

Постановка задачи - битва мертвых


Problem Statement - Battle of the dead
Daenerys Targaryen is the mother of dragons, flying on her dragons towards the north to
destroy the army of dead(zombies). The zombies are oddly distributed in battlefield. She can
throw dragon fire to burn zombies in a circular spot of about 5 units in diameter but she can only
do this once before the dragon gets exhausted. She needs your help to decide where to throw
fire in order to burn maximum possible zombies.


Input
You will be given a collection of coordinates in battlefield where zombies are located.
Eg: [ { x: 10.5, y: 10.5 }, { x: 40.2, y: 30.6 },... ]


Output
Output the maximum number of zombies that can be burnt in one attack.

Method Signature
function burnThemAll( zombies ) => number

Limits
Time limit (s): 840.000
Memory limit (MB): 64

Constraints
● The size of battle field is constant (i.e. 50x50 units) for all the inputs.
● Both x and y values of the coordinates are in-between 0.0 unit and 50.0 unit.
● No two zombies are closer than 0.1 unit.
● Dragons may throw fire at any edge points of the battlefield also.
● If there is no zombie on battlefield, then return 0.
● Each zombie is considered a point. Each zombie is at a different position


Что я уже пробовал:

function burnThemAll ( zombies ) {
	var feild_area = 50*50
	var burt_area = 0
	let z  = zombies.sort(function(a, b){return b['x'] - a['y']})
	// console.log(z[0].x-z[8].x)
	for (let i=0;i<z.length;i++){
		for (let j=0;j<i+1;j++){
			console.log(z[i]['x']-z[j]['x']);
		}
			// console.log(z[i]['x']-z[j]['x'])
			// console.log(z[i]['x']);

	}
}

Patrice T

И у вас есть вопрос или вы просто хотите, чтобы мы сделали вашу домашнюю работу?

Kornfeld Eliyahu Peter

Судя по этому "коду", вы понятия не имеете, что делать. Это потому, что вы спали во время занятий, или просто выбрали неправильное упражнение для начала?

Вопрос: Знаете ли вы, как проверить, находится ли точка внутри круга?

1 Ответов

Рейтинг:
1

OriginalGriff

Мы не делаем домашнее задание: оно задано не просто так. Она существует для того, чтобы вы думали о том, что вам сказали, и пытались понять это. Он также существует для того, чтобы ваш наставник мог определить области, в которых вы слабы, и сосредоточить больше внимания на корректирующих действиях.
И разработка того, как это сделать, является важной частью этой задачи.

Попробуйте сами, возможно, вы обнаружите, что это не так сложно, как вы думаете!
Однако я дам вам отправную точку: как бы вы сделали это вручную? Предположим, что у вас есть шахматная доска с пешками, расположенными случайным образом вокруг нее. Ваш "драконий огонь" попадает в радиус два, поэтому он каждый раз попадает в "кусок" доски 3 х 3, центрированный вокруг точки, в которую она целится.
Итак, как бы вы решили, в какое место целиться, если бы вам пришлось делать это самостоятельно?
Когда вы это выясните, это должно быть достаточно легко перевести в компьютерный код!

Если вы столкнетесь с конкретной проблемой, то, пожалуйста, спросите об этом, и мы сделаем все возможное, чтобы помочь. Но мы не собираемся делать все это для вас!