求网格中的黑点分布


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...

面试题 相关文章推荐
您熟悉ORM(Object-Relation Mapping)吗?请谈谈您所理解的ORM
Feb 08 面试题
说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
May 24 面试题
广州御银科技股份有限公司试卷(C++)
Nov 04 面试题
如何提高SQL Server的安全性
Jul 25 面试题
.net面试题
Sep 17 面试题
在子网210.27.48.21/30种有多少个可用地址?分别是什么?
Jul 27 面试题
某公司部分笔试题
Nov 05 面试题
比较一下entity bean和session bean
Dec 27 面试题
EJB3.1都有哪些改进
Nov 17 面试题
AJAX的全称是什么
Nov 06 面试题
用Python写一个for循环的例子
Jul 19 面试题
Java面试题:说出如下代码的执行结果
Oct 30 面试题
用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
php 日期和时间的处理-郑阿奇(续)
2011/07/04 PHP
一个漂亮的php验证码类(分享)
2013/08/06 PHP
PHP插件PHPMailer发送邮件功能
2017/02/28 PHP
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
javascript 命名规则 变量命名规则
2010/02/25 Javascript
Wordpress ThickBox 添加“查看原图”效果代码
2010/12/11 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
2013/04/02 Javascript
原生javascript和jquery判断浏览器版本等信息
2013/07/04 Javascript
javascript判断机器是否联网的2种方法
2013/08/09 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
Node.js静态文件服务器改进版
2016/01/10 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
微信小程序  Mustache语法详细介绍
2016/10/27 Javascript
原生js实现下拉框功能(支持键盘事件)
2017/01/13 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
在vue里面设置全局变量或数据的方法
2018/03/09 Javascript
JS常见DOM节点操作示例【创建 ,插入,删除,复制,查找】
2018/05/14 Javascript
基于React+Redux的SSR实现方法
2018/07/03 Javascript
JS字符串常用操作方法实例小结
2019/06/24 Javascript
详解vue beforeEach 死循环问题解决方法
2020/02/25 Javascript
[05:15]2018年度CS GO社区贡献奖-完美盛典
2018/12/16 DOTA
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
pandas DataFrame实现几列数据合并成为新的一列方法
2018/06/08 Python
python except异常处理之后不退出,解决异常继续执行的实现
2020/04/25 Python
python 对xml解析的示例
2021/02/27 Python
好的演讲稿开场白
2013/12/30 职场文书
优秀实习生感言
2014/03/01 职场文书
超市商业计划书
2014/05/04 职场文书
金融管理专业求职信
2014/07/10 职场文书
公司外出活动方案
2014/08/14 职场文书
孩子教育的心得体会
2014/09/01 职场文书
居安思危观后感
2015/06/11 职场文书
SQL SERVER中常用日期函数的具体使用
2021/04/08 SQL Server
python自动化测试之Selenium详解
2022/03/13 Python
使用Python拟合函数曲线
2022/04/14 Python