24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1007  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

lbws328

新虫 (小有名气)

[求助] c++/c 求助关于多维数组里改变一个区域值已有2人参与

如何用c++ 把数组里一个区域内得6个相邻的1变成0, 大于6个相邻的1不变。看图片

求大神给代码或思路,不要太难水平有限。。。

c++/c 求助关于多维数组里改变一个区域值
原始数据


c++/c 求助关于多维数组里改变一个区域值-1
相邻6个1变为0
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lbws328

新虫 (小有名气)

引用回帖:
2楼: Originally posted by Mr__Right at 2017-08-18 11:00:47
首先你要识数,那是一共9个,相邻的是8个。

然后,找到中心位置指标,



然后,根据指标增减的2^3=8种排列组合,全部赋值为0

抱歉是我没说明白,我想问得是这连续9个值 *(形状不规则有3*3 还有2*3 各种各样)
从第一个1开始计算为1 第二个1为2第三个1为3 换行然后是4,5,6,换行,7,8,9
这样 小于等于9的,前面1,2,3,4,5,6,7,8,9全为0,大于9的值不变,我现在是 小于等于9的,前面1,2,3,4,5,6,7,8,9全为0这里不知道怎么办,求解答
4楼2017-08-23 10:15:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2017-08-18 12:59:26
lbws328: 金币+150, 有帮助 2017-08-23 10:09:46
首先你要识数,那是一共9个,相邻的是8个。

然后,找到中心位置指标,

[i,j]

然后,根据指标增减的2^3=8种排列组合,全部赋值为0
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
2楼2017-08-18 11:00:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

imyourkobe

铁杆木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
感谢参与,应助指数 +1
lbws328: 金币+150, 有帮助 2017-08-23 10:09:58
很容易的。用二维数组或容器来存储数据,写一个简单的算法判断六个连续的数据为1的个数累加。满足则修改。不满足继续判断下一组。
3楼2017-08-18 21:50:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lbws328

新虫 (小有名气)

引用回帖:
3楼: Originally posted by imyourkobe at 2017-08-18 21:50:25
很容易的。用二维数组或容器来存储数据,写一个简单的算法判断六个连续的数据为1的个数累加。满足则修改。不满足继续判断下一组。

抱歉是我没说明白,我想问得是这连续9个值 *(形状不规则有3*3 还有2*3 各种各样)
从第一个1开始计算为1 第二个1为2第三个1为3 换行然后是4,5,6,换行,7,8,9
这样 小于等于9的,前面1,2,3,4,5,6,7,8,9全为0,大于9的值不变,我现在是 小于等于9的,前面1,2,3,4,5,6,7,8,9全为0这里不知道怎么办,
5楼2017-08-23 10:18:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见