一:题目
题目链接:http://118.190.20.162/view.page?gpid=T180
二:题目解析
第一步:创建数组,输入数组数据;
for(int i = 1;i <= n;i++)
{
for(int j = 1;j <= m;j++)
{
cin>>a[i][j];
}
}
第二步:利用一个变量flag代表有没有找到上级仓库,利用另外一个变量判断有没有找到比i仓大的值。
for(int i = 1;i <= n;i++)
{
bool flag = false;
for(int j = 1;j <= n;j++)
{
bool flag1 = true;
for(int t = 1;t <= m;t++)
{
if(a[i][t] >= a[j][t])
{
flag1 = false;
break;
}
}
if(flag1)
{
cout<<j<<endl;
flag = true;
break;
}
}
if(!flag)
{
cout<<"0"<<endl;
}
}
三:代码
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int n,m;
int a[1010][15];
int main()
{
cin>>n>>m;
for(int i = 1;i <= n;i++)
{
for(int j = 1;j <= m;j++)
{
cin>>a[i][j];
}
}
for(int i = 1;i <= n;i++)
{
bool flag = false;
for(int j = 1;j <= n;j++)
{
bool flag1 = true;
for(int t = 1;t <= m;t++)
{
if(a[i][t] >= a[j][t])
{
flag1 = false;
break;
}
}
if(flag1)
{
cout<<j<<endl;
flag = true;
break;
}
}
if(!flag)
{
cout<<"0"<<endl;
}
}
return 0;
}