求网格中的黑点分布


Posted in 面试题 onNovember 06, 2013
求网格中的黑点分布。现有6*7的网格,在某些格子中有黑点,已知各行与各列中有黑点的点数之和,请在这张网格中画出黑点的位置。(这是一网友提出的题目,说是他笔试时遇到算法题)
#define ROWS 6
#define COLS 7
int iPointsR[ROWS] = {2, 0, 4, 3, 4, 0}; // 各行黑点数和的情况
int iPointsC[COLS] = {4, 1, 2, 2, 1, 2, 1}; // 各列黑点数和的情况
int iCount, iFound;
int iSumR[ROWS], iSumC[COLS], Grid[ROWS][COLS];

int Set(int iRowNo) {
if(iRowNo == ROWS) {
for(int iColNo=0; iColNo if(iColNo == COLS-1) {
printf(“\nNo.%d:\n”, ++iCount);
for(int i=0; i for(int j=0; j printf(“%d%c”, Grid[i][j], (j+1) % COLS ? ‘ ‘ : ‘\n’);
iFound = 1; // iFound = 1,有解
}
} else {
for(int iColNo=0; iColNo if(iPointsR[iRowNo] == 0) {
Set(iRowNo + 1);
} else if(Grid[iRowNo][iColNo]==0) {
Grid[iRowNo][iColNo] = 1;
iSumR[iRowNo]++; iSumC[iColNo]++; if(iSumR[iRowNo] Set(iRowNo);
else if(iSumR[iRowNo]==iPointsR[iRowNo] && iRowNo Set(iRowNo + 1);
Grid[iRowNo][iColNo] = 0;
iSumR[iRowNo]–;
iSumC[iColNo]–;
}
}
}
return iFound; // 用于判断是否有解
}
int main(int argc, char* argv[]) {
if(!Set(0))
printf(“Failure!”);
}

Tags in this post...

面试题 相关文章推荐
公司JAVA开发面试题
Apr 02 面试题
枚举与#define宏的区别
Apr 30 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
Sep 16 面试题
亿阳信通股份有限公司C#笔试题
Dec 06 面试题
params有什么用
Mar 01 面试题
在c#中using和new这两个关键字有什么意义
May 19 面试题
Linux的文件类型
Jul 05 面试题
27个经典Linux面试题及答案,你知道几个?
Jan 10 面试题
什么是JNDI的上下文?如何初始化JNDI上下文
Mar 10 面试题
为什么Runtime.exec(“ls”)没有任何输出?
Oct 03 面试题
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上
Jul 06 面试题
一套英文Java笔试题面试题
Apr 21 面试题
用C语言实现文件读写操作
Oct 27 #面试题
网络、C以及其他硬件方面的面试题
Aug 23 #面试题
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
Jan 18 #面试题
编写用C语言实现的求n阶阶乘问题的递归算法
Oct 21 #面试题
C语言笔试题回忆
Apr 02 #面试题
寻找迷宫的一条出路,o通路;X:障碍
Jul 10 #面试题
外企C语言笔试题
Nov 10 #面试题
You might like
地摊中国 - 珍藏老照片
2020/08/18 杂记
Thinkphp将二维数组变为标签适用的一维数组方法总结
2014/10/30 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
2015/03/18 PHP
windows下apache搭建php开发环境
2015/08/27 PHP
php邮箱地址正则表达式验证
2015/11/13 PHP
PHP的Yii框架中过滤器相关的使用总结
2016/03/29 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
2018/06/10 PHP
JavaScript内核之基本概念
2011/10/21 Javascript
Json2Template.js 基于jquery的插件 绑定JavaScript对象到Html模板中
2011/10/29 Javascript
jquery聚焦文本框与扩展文本框聚焦方法
2012/10/12 Javascript
JS模拟自动点击的简单实例
2013/08/08 Javascript
js中的replace方法使用介绍
2013/10/28 Javascript
jquery获取点击控件的绝对位置简单实例
2016/10/13 Javascript
JS动态遍历json中所有键值对的方法(不知道属性名的情况)
2016/12/28 Javascript
jQuery实现扑克正反面翻牌效果
2017/03/10 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
javascript中的隐式调用
2018/02/10 Javascript
vue嵌套路由与404重定向实现方法分析
2018/05/04 Javascript
js实现各浏览器全屏代码实例
2018/07/03 Javascript
Vue组件通信$attrs、$listeners实现原理解析
2020/09/03 Javascript
Python中的默认参数详解
2015/06/24 Python
Django ORM框架的定时任务如何使用详解
2017/10/19 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
pymongo insert_many 批量插入的实例
2020/12/05 Python
Speedo美国:澳大利亚顶尖泳衣制造商
2016/08/03 全球购物
海量信息软件测试笔试题
2015/08/08 面试题
宿舍卫生检讨书
2014/01/16 职场文书
电焊工工作岗位职责
2014/02/06 职场文书
本科毕业生求职自荐信
2014/04/09 职场文书
校长四风对照检查材料
2014/09/27 职场文书
2015年计生工作总结范文
2015/04/24 职场文书
2015年办公室文员工作总结
2015/04/24 职场文书
监护人证明
2015/06/19 职场文书
JavaScript 实现页面滚动动画
2021/04/24 Javascript
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python