Я делал проблемы с кодированием в Codefights, спонсируемый Uber, и возникла проблема, которую я не смог решить. На этот вопрос вы можете посмотреть здесь http://codepen.io/ducminhn/pen/JYmrmE.Функция парковочного места, заданная для паркинга, и размер автомобиля
Я считаю, что эта проблема связана с динамическим программированием, поэтому я отметил эту проблему как динамическое программирование, но я все еще изучаю Java, поэтому, пожалуйста, сообщите мне, если я ошибаюсь. Это то, что у меня есть до сих пор, и я считаю, что моя логика может быть неправильной внутри цикла вложенных циклов. Если кто-то может рассмотреть мой код и исправить его для меня.
Спасибо заранее,
boolean parkingSpot(int[] carDimensions, int[][] parkingLot, int[] luckySpot) {
int carx = carDimensions[0];
int cary = carDimensions[1];
boolean result = false;
for(int l=0;l<parkingLot.length;l++){
for(int k=0;k<parkingLot.length;k++){
if(l == luckySpot[0]){
for(int i=luckySpot[0];i<carx;i++){
if(k== luckySpot[1]){
for(int j= luckySpot[1];j<cary;j++){
if(parkingLot[i][j] != 0){
result = false;
}
}
}
}
}
}
}
return true;
}
Я не думаю, что это динамическое программирование (или я недопонимание вопрос!), Но вместо того, чтобы что-то вроде простого 'суммы [много [0..carx + размерностей [2]] [Cary .. cary + размеры [3]] == 0' и аналогичные для проверки подхода справа. –