NYOJ题目27水池数目
---------------------------------------------
这道题有点坑,也怪我总是有点马虎,按照正常人的思维0是表示有水池啊竟然是1表示有水池,最坑的是写反了竟然还能过样例一直以为是自己程序问题review了好多遍....
图论基础题,染色法即可。
AC代码:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int times=sc.nextInt();
while(times-->0){
int n=sc.nextInt();
int m=sc.nextInt();
map=new int[n][m]; for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
map[i][j]=sc.nextInt();
}
} int color=0;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
if(map[i][j]==1) dfs(i,j,--color);
}
}
System.out.println(-color);
}
} public static int map[][];
public static int next[][]={{-1,0},{0,1},{1,0},{0,-1}}; public static void dfs(int x,int y,int color){
if(x<0 || x>=map.length || y<0 || y>=map[x].length) return ;
if(map[x][y]==1){
map[x][y]=color;
for(int i=0;i<next.length;i++){
int nx=x+next[i][0];
int ny=y+next[i][1];
dfs(nx,ny,color);
}
}
} }
题目来源: http://acm.nyist.net/JudgeOnline/problem.php?pid=27
NYOJ题目27水池数目的更多相关文章
- nyoj 27 水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
- NYOJ 27.水池数目-DFS求连通块
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
- nyoj水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
- nyoj27水池数目 (DFS)
题目27 题目信息 执行结果 本题排行 pid=27" style="text-decoration:none; color:rgb(55,119,188)">讨论 ...
- ACM 水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
- 水池数目(DFS)
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
- acm入门搜索-水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地图上仅标识了此处 ...
- ny27 水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地图上 ...
- NYOJ36 水池数目
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地 ...
随机推荐
- IE下a标签后面的span元素向右浮动后错位
错误原因span放在了a标签之后 正确写法是放在之前 如下: <li><span>2016-07-29</span><a href="#" ...
- 如何完全卸载(Mac&Windows)office 365 ProPlus
Q: 如何完全卸载office 365 ProPlus,如果用户使用之前的office版本没有卸载干净(配置文件中保持了原有的Key)会造成新安装的office 365 ProPlus 或者最新版的o ...
- ResourceHacker(4.5.30)单文件绿色汉化版
经常编译软件的人,肯定会使用一些编译和反编译的工具,ResourceHacker作为一款资源编译工具,非常的小巧好用,ResourceHacker没有任何广告,支持打开.exe..dll..scr.. ...
- VOC2007检测任务的评估标准
VOC2007数据集使用mAP值作为检测算法检测结果的性能评估得分.mAP意思是mean Average Precision,Precision是指精度,Average Precision是指11个等 ...
- 了解了下 Google 最新的 Fuchsia OS
就是看到篇报道,有点好奇,就去FQ挖了点东西回来. 我似乎已开始就抓到了重点,没错,就是 LK . LK 是 Travis Geiselbrecht 写的一个针对 ARM 的嵌入式操作系统,开源的.点 ...
- UnixC学习小结
1.malloc工作原理: malloc使用一个数据结构(链表)维护分配空间 链表的构成:分配的空间/上一个空间数据/下一个空间/空间大小等信息. 对malloc分配的空间不要 ...
- rails
http://ruby-toolbox.com/ ~/.gemrc --- :backtrace: false :benchmark: false :bulk_threshold: 1000 :sou ...
- 深入C#内存管理来分析值类型&引用类型,装箱&拆箱,堆栈几个概念组合之间的区别
C#初学者经常被问的几道辨析题,值类型与引用类型,装箱与拆箱,堆栈,这几个概念组合之间区别,看完此篇应该可以解惑. 俗话说,用思想编程的是文艺程序猿,用经验编程的是普通程序猿,用复制粘贴编程的是2B程 ...
- MyBatis源码分析(2)—— Plugin原理
@(MyBatis)[Plugin] MyBatis源码分析--Plugin原理 Plugin原理 Plugin的实现采用了Java的动态代理,应用了责任链设计模式 InterceptorChain ...
- 关于学习angularJS 的 心里路程(二)
这一次主要的学习内容是 ng-route(本次的项目由于种种原因吧,我们采用了ui-router,而不是原生的ng-route) * 配置路由. * 注意这里采用的是ui-router这个路由,而不是 ...