(注:此题选用C++写法,并非C语言写法。)
题目描述
又到了体育课,今天的体育课,科丁博士仍然会带大家做“点兵点将”的游戏;不过游戏规则有点变化,同样的老师会先给每位同学发一张卡片,每张卡片上都有一个数字并且保证每个同学卡片上的数字都是独一无二的(数字不会超过int的最大值),然后让大家按m行n列的阵型站好(2<=m,n<=100),体育老师会随机报出数字,然后对应的同学,站出来报出自己所在的行和列
现在给出每位同学卡片中的数字,并给出体育老师报出的数字,求点到名同学报出的行号和列号
输入格式
第1行:两个整数:m和n,第一个数表示行数,第二个数表示列数
第2~m+1行:每行n个整数,表示每个同学卡片上的数字
第m+2行:1个整数num,表示老师报出的数字
输出格式
输出一行:如果老师报出的数字存在,则输出两个空格隔开的整数,表示点到名的同学报出的行号和列号;如果老师报出的数字不存在,则输出“empty”。
输入输出样列
输入样例1:
5 5
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
18
输出样例1:
4 3
输入样例2:
3 4
1 2 3 4
8 9 7 10
18 20 14 13
0
输出样例2:
empty
说明
第一位同学站的位置:第一行第一列
【耗时限制】1000ms 【内存限制】128MB
代码如下:
#include<iostream>
#include<cmath>
#include<string>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<sstream>
using namespace std;
int a[110][110];
int main()
{
int m,n;
cin>>m>>n;
for(int i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
cin>>a[i][j];
}
}
int b;
cin>>b;
for(int i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
if(a[i][j]==b)
{
cout<<i<<' '<<j;
}
}
}
return 0;
}
希望对您有所帮助!!!