_jobdu_1384:二维数组中的查找
/************************************************************************/
/* 题目描述:
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
输入:
输入可能包含多个测试样例,对于每个测试案例,
输入的第一行为两个整数m和n(1<=m,n<=1000):代表将要输入的矩阵的行数和列数。
输入的第二行包括一个整数t(1<=t<=1000000):代表要查找的数字。
接下来的m行,每行有n个数,代表题目所给出的m行n列的矩阵(矩阵如题目描述所示,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。
输出:
对应每个测试案例,
输出”Yes”代表在二维数组中找到了数字t。
输出”No”代表在二维数组中没有找到数字t。
样例输入:
3 3
5
1 2 3
4 5 6
7 8 9
3 3
1
2 3 4
5 6 7
8 9 10
3 3
12
2 3 4
5 6 7
8 9 10
样例输出:
Yes
No
No */
/************************************************************************/ /************************************************************************/
/* Accomplished by Array */
/************************************************************************/
//#include<stdio.h>
//double gArr[1000][1000];
//int main()
//{
// int m,n,t,i,j;
// while(scanf("%d %d", &m, &n) != EOF)
// {
// scanf("%d", &t);
// for( i = 0; i<m; i++)
// for( j = 0; j<n; j++)
// scanf("%lf", &gArr[i][j]);
// i = 0;
// j -- ;
// while(i<m&&j>=0)
// {
// if(gArr[i][j] == t)break;
// else if(gArr[i][j]<t)i++;
// else if(gArr[i][j]>t)j--;
// }
// if(i<m&&j>=0)printf("Yes\n");
// else printf("No\n");
// m = n = t = i = j = 0;
// }
// return 0;
//} /************************************************************************/
/* Accomplished by Point */
/************************************************************************/ #include<stdio.h>
int main()
{
double * pArr = NULL;
double * pWork = NULL;
int m,n,t,i,j;
while(scanf("%d %d", &m, &n) != EOF)
{
scanf("%d", &t);
pArr = new double[m*n];
for( i = ; i<m*n; i++)
scanf("%lf", &pArr[i]);
i = ;
j = n-;
while(i<m&&j>=)
{
if(pArr[i*n + j] == t)break;
else if(pArr[i*n + j]<t)i++;
else if(pArr[i*n + j]>t)j--;
}
if(i<m&&j>=)printf("Yes\n");
else printf("No\n");
m = n = t = i = j = ;
delete [] pArr;
}
return ;
}
_jobdu_1384:二维数组中的查找的更多相关文章
- 剑指Offer面试题:2.二维数组中的查找
一.题目:二维数组中的查找 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ...
- 剑指Offer:面试题3——二维数组中的查找(java实现)
问题描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 思路:取数组中的元素与 ...
- 【面试题003】c数组做为参数退化的问题,二维数组中的查找
[面试题003]c数组做为参数退化的问题,二维数组中的查找 一,c数组做为参数退化的问题 1.c/c++没有记录数组的大小,因此用指针访问数组中的元素的时候,我们要确保没有超过数组的边界, 通过下面 ...
- 九度OJ 题目1384:二维数组中的查找
/********************************* * 日期:2013-10-11 * 作者:SJF0115 * 题号: 九度OJ 题目1384:二维数组中的查找 * 来源:http ...
- 《剑指Offer》面试题-二维数组中的查找
题目1384:二维数组中的查找 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:7318 解决:1418 题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到 ...
- 《剑指offer》— JavaScript(1)二维数组中的查找
二维数组中的查找 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ** ...
- 剑指offfer:二维数组中的查找
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成这样一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 例如: 1 2 ...
- C#版 - 小红书后台开发面试题: 二维数组中的查找
二维数组中的查找 热度指数:24274 时间限制:1秒 空间限制:32768K 本题知识点: 查找 在线提交网址: http://www.nowcoder.com/practice/abc3fe2 ...
- 二维数组中的查找问题--剑指offer面试题3
题目:在一个二维数组中,对每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. // 二维数组中的查找 ...
- 《剑指offer》 二维数组中的查找
本题目是<剑指offer>中的题目 二维数组中的查找 题目: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个 ...
随机推荐
- js 基本介绍
ecma 对象 三个包类型 String ParseInt ParseDouble instanceof typeof Math 对象 Array Date RegExp -- bom对象 ...
- iOS viewDidAppear 和 viewWillAppear
今天发现,如果用navigation push一个controller,那么从动画开始就调用viewwillappear,动画全部停止才会调用viewDidAppear,不知道是否正确,先做记录,带验 ...
- 菜单栏展开和收起效果(纯js)
2014年6月25日 15:36:29 需要关注的是: 1.用cookie保存用户当前点击的菜单项,不打扰后端代码 2.通过数学计算得到要显示和隐藏的div 3.点击事件是动态绑定到a标签上的,因此当 ...
- Java中Set集合的使用
除了List之外,Set集合接口也经常使用,Set接口中存放的元素是无序的并且是不可重复的,因此被称为数据集: Set接口因为是无序的,所以没有提供像List一样的set方法来修改元素,查找,添加.删 ...
- MFC 文件按行读写 CStdioFile
//写文件 CStdioFile file; file.Open("test.txt",CFile::modeCreate|CFile::modeReadWrite); file. ...
- 细胞分裂(codevs 2952)
题目描述 Description 著名生物学家F博士发现了一种单细胞生物. 它长得像蚯蚓,分裂速度极快(每分钟一次),分裂也像蚯蚓一样,断成两段,再长成. 它很好斗,只要q只聚集在一起,就会q只一群打 ...
- Oracle如何操作级联删除
级联删除即删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用.在级联删除中,还删除其外键值引用删除的主键值的所有行. 语法: Foreign Key (column[,...n]) refe ...
- Sql server之路 (四)添加本地数据库MDF文件
安装环境 VS2008 Vs2008 Sp1 安装系统 Win8 1.创建窗体 右键添加新项 上一步 上一步 点击确定 双击Database1.mdf文件 在列名出填写字段名 保存 Ctrl+S 点 ...
- inner join、left join、right join等的区别
left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录.right join :右连接,返回右表中所有的记录以及左表中连接字段相等的记录.inner join: 内连接,又叫等 ...
- hdu 4578 线段树 ****
链接:点我 1