在一个m x n的牧场中, 遭受了疯牛病的袭击,有部分的牛感染了病毒。 现在,牧场中每个单元格可以有以下三个值之一: 值0代表空地; 值1代表健康的牛; 值2代表患有疯牛病的牛。 每分钟,患有疯牛病的牛周围4个方向上相邻的健康牛都会被感染。 返回直到牧场中没有健康的牛为止所必须经过的最小分钟数。如果不可能到达此情况,返回-1。

区块链毕设网qklbishe.com为您提供问题的解答

在一个m x n的牧场中,遭受了疯牛病的袭击,有部分的牛感染了病毒。

现在,牧场中每个单元格可以有以下三个值之一:

值0代表空地;
值1代表健康的牛;
值2代表患有疯牛病的牛。
每分钟,患有疯牛病的牛周围4个方向上相邻的健康牛都会被感染。

返回直到牧场中没有健康的牛为止所必须经过的最小分钟数。如果不可能到达此情况,返回-1。

import java.util.*;   public class Solution {     /**      * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可      *      *       * @param pasture int整型二维数组       * @return int整型      */     private Queue<int[]> q=new LinkedList();     private int[][] pasture;     private int m,n,days;     public int healthyCowsII (int[][] pasture) {         this.pasture=pasture;         this.m=pasture.length;         this.n=pasture[0].length;          for(int i=0;i<m;i++){             for(int j=0;j<n;j++){                 if(pasture[i][j]==2){                     q.add(new int[]{i,j});                 }             }         }         bfs();         for(int i=0;i<m;i++){             for(int j=0;j<n;j++){                 if(pasture[i][j]==1) return -1;             }         }         return days-1;     }     public void bfs(){         int[][] dirs={{0,1},{0,-1},{1,0},{-1,0}};         while(!q.isEmpty()){             int n=q.size();             for(int i=0;i<n;i++){                 int[] arr=q.poll();                 pasture[arr[0]][arr[1]]=2;                 for(int j=0;j<4;j++){                     int x=arr[0]+dirs[j][0];                     int y=arr[1]+dirs[j][1];                     if(check(x,y)) q.add(new int[]{x,y});                 }             }             days++;         }     }     public boolean check(int i,int j){         return i>=0&&i<m&&j>=0&&j<n&&pasture[i][j]==1;     } }

27:09

以上就是关于问题在一个m x n的牧场中, 遭受了疯牛病的袭击,有部分的牛感染了病毒。 现在,牧场中每个单元格可以有以下三个值之一: 值0代表空地;
值1代表健康的牛;
值2代表患有疯牛病的牛。
每分钟,患有疯牛病的牛周围4个方向上相邻的健康牛都会被感染。 返回直到牧场中没有健康的牛为止所必须经过的最小分钟数。如果不可能到达此情况,返回-1。的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一个m x n的牧场中, 遭受了疯牛病的袭击,有部分的牛感染了病毒。 现在,牧场中每个单元格可以有以下三个值之一: 值0代表空地; 值1代表健康的牛; 值2代表患有疯牛病的牛。 每分钟,患有疯牛病的牛周围4个方向上相邻的健康牛都会被感染。 返回直到牧场中没有健康的牛为止所必须经过的最小分钟数。如果不可能到达此情况,返回-1。