leetcode289
public class Solution
{
public void GameOfLife(int[][] board)
{
var row = board.GetLength() - ;
var col = board[].GetLength() - ;
var list = new List<List<int>>();
for (int r = ; r <= row; r++)
{
var l = new List<int>();
for (int c = ; c <= col; c++)
{
l.Add(board[r][c]);
}
list.Add(l);
} for (int r = ; r <= row; r++)
{
for (int c = ; c <= col; c++)
{
int livecount = ;
for (int i = -; i <= ; i++)
{
for (int j = -; j <= ; j++)
{
if (i == && j == )
{
continue;
}
var newx = r + i;
var newy = c + j;
if (newx < || newx > row || newy < || newy > col)
{
continue;
}
if (board[newx][newy] == )
{
livecount++;//活节点
}
}
}
if (board[r][c] == )//当前节点是活节点
{
if (livecount == || livecount == )
{
list[r][c] = ;
}
else
{
list[r][c] = ;
}
}
else
{
if (livecount == )
{
list[r][c] = ;
}
}
}
} for (int i = ; i < list.Count; i++)
{
for (int j = ; j < list[].Count; j++)
{
board[i][j] = list[i][j];
}
}
}
}
leetcode289的更多相关文章
- [Swift]LeetCode289. 生命游戏 | Game of Life
According to the Wikipedia's article: "The Game of Life, also known simply as Life, is a cellul ...
- 2017-3-9 leetcode 283 287 289
今天操作系统课,没能安心睡懒觉23333,妹抖龙更新,可惜感觉水分不少....怀念追RE0的感觉 =================================================== ...
随机推荐
- MySQL中表的复制
1.语法 create table 表名 select .. from 表名 where 条件; 2.示例 1.复制MOSHOU.sanguo表的全部记录和字段,sanguo2 create tabl ...
- 用IdHTTPServer搞个简单的WEB服务器下载文件
放在公司共享盘中的文件,不时就被其他人剪切走了,本想用Apache搭个服务端,提供文件下载的功能,写php脚本时碰到点问题,没折腾出来,一狠心,用Indy的IdHttpServer写.不过中间也碰到了 ...
- Mysql 分组查询最高分
今天告诉我要写一个服务,目的是按照每个班中各分组中竞赛最高分组平分小组得分给各个成员的服务,于是就有两个技术需求 1 查询每个班的冠军团队 2 增加一组人的分数 从“1”中,查出每个班N个分组中的得分 ...
- BZOJ4552 Tjoi2016&Heoi2016排序 【二分+线段树】*
Description 在2016年,佳媛姐姐喜欢上了数字序列.因而他经常研究关于序列的一些奇奇怪怪的问题,现在他在研究一个难题,需要你来帮助他.这个难题是这样子的:给出一个1到n的全排列,现在对这个 ...
- 20179223《Linux内核原理与分析》第八周学习笔记
视频学习 可执行文件是怎么得来的? .c汇编成汇编代码.asm,然后再汇编成目标码.o.然后在连接成可执行文件,然后加载到内存可执行了. 对hello.c文件预处理(cpp),预处理负责把includ ...
- LeetCode 760. Find Anagram Mappings
原题链接在这里:https://leetcode.com/problems/find-anagram-mappings/description/ 题目: Given two lists Aand B, ...
- 编写浏览器和Node.js通用的JavaScript模块
长期以来JavaScript语言本身不提供模块化的支持, ES6中终于给出了 from, import等关键字来进行模块化的代码组织. 但CommonJS.AMD等规范已经被广为使用,如果希望你的Ja ...
- 基于C#的UDP协议的同步实现
一.摘要 总结基于C#的UDP协议的同步通信. 二.实验平台 Visual Studio 2010 三.实验原理 UDP传输协议同TCP传输协议的区别可查阅相关文档,此处不再赘述. 四.实例 4.1 ...
- 高并发的epoll+线程池,线程池专注实现业务
我们知道,服务器并发模型通常可分为单线程和多线程模型,这里的线程通常是指“I/O线程”,即负责I/O操作,协调分配任务的“管理线程”,而实际的请求和任务通常交由所谓“工作者线程”处理.通常多线程模型下 ...
- Falcon
1. JE falcon还需要安装je用来处理jdbc,否则打不开falcon的页面,爆内部错误503,然后看异常信息:Caused by: org.apache.falcon.FalconExcep ...