Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static int collectedCoins(int[][] grid,int row, int col){
- int coinCount = 0;
- if(outOfGrid(grid,row,col)){
- return -1;
- }
- if(grid[row][col]==0){
- return -1;
- }
- if(grid[row][col] >0){
- grid[row][col]--;
- }
- boolean left = outOfGrid(grid,row,col-1);
- boolean right = outOfGrid(grid,row,col+1);
- boolean up = outOfGrid(grid,row-1,col);
- boolean down = outOfGrid(grid,row+1,col);
- if(!left && !right && !up && !down && grid[row][col-1] >= grid[row][col+1] && grid[row][col-1] >=
- grid[row-1][col] && grid[row][col-1] >= grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col-1);
- } else if(!left && !right && !up && !down && grid[row][col+1] >= grid[row][col-1] && grid[row][col+1] >=
- grid[row-1][col] && grid[row][col+1] >= grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col+1);
- } else if(!left && !right && !up && !down && grid[row-1][col] >= grid[row][col-1] && grid[row-1][col] >=
- grid[row][col+1] && grid[row-1][col] >= grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row-1,col);
- } else if(!left && !right && !up && !down && grid[row+1][col] >= grid[row][col-1] && grid[row+1][col] >=
- grid[row][col+1] && grid[row+1][col] >= grid[row-1][col]){
- coinCount += 1 + collectedCoins(grid,row+1,col);
- } else if(!left && !right && !up && down && grid[row][col-1] >= grid[row][col+1] && grid[row][col-1] >=
- grid[row-1][col]){
- coinCount += 1 + collectedCoins(grid,row,col-1);
- } else if(!left && !right && !up && down && grid[row][col+1] >= grid[row][col-1] && grid[row][col+1] >=
- grid[row-1][col]){
- coinCount += 1 + collectedCoins(grid,row,col+1);
- } else if(!left && !right && !up && down && grid[row-1][col] >= grid[row][col-1] && grid[row-1][col] >=
- grid[row][col+1]){
- coinCount += 1 + collectedCoins(grid,row-1,col);
- } else if(!left && !right && up && !down && grid[row][col-1] >= grid[row][col+1] && grid[row][col-1] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col-1);
- } else if(!left && !right && up && !down && grid[row][col+1] >= grid[row][col-1] && grid[row][col+1] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col+1);
- } else if(!left && !right && up && !down && grid[row+1][col] >= grid[row][col-1] && grid[row+1][col] >=
- grid[row][col+1]){
- coinCount += 1 + collectedCoins(grid,row+1,col);
- } else if(!left && right && !up && !down && grid[row][col-1] >= grid[row-1][col] && grid[row][col-1] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col-1);
- } else if(!left && right && !up && !down && grid[row-1][col] >= grid[row][col-1] && grid[row-1][col] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row-1,col);
- } else if(!left && right && !up && !down && grid[row+1][col] >= grid[row][col-1] && grid[row+1][col] >=
- grid[row-1][col]){
- coinCount += 1 + collectedCoins(grid,row+1,col);
- } else if(left && !right && !up && !down && grid[row][col+1] >= grid[row-1][col] && grid[row][col+1] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row,col+1);
- } else if(left && !right && !up && !down && grid[row-1][col] >= grid[row][col+1] && grid[row-1][col] >=
- grid[row+1][col]){
- coinCount += 1 + collectedCoins(grid,row-1,col);
- } else if(left && !right && !up && !down && grid[row+1][col] >= grid[row][col+1] && grid[row+1][col] >=
- grid[row-1][col]){
- coinCount += 1 + collectedCoins(grid,row+1,col);
- } else if(){
- }
- coinCount += 1 + collectedCoins(grid,row,col-1);
- coinCount += 1 + collectedCoins(grid,row,col+1);
- coinCount += 1 + collectedCoins(grid,row-1,col);
- coinCount += 1 + collectedCoins(grid,row+1,col);
- return coinCount;
- }
Advertisement
Add Comment
Please, Sign In to add comment