您的位置:首页 > 其它

CodeForces 616B Dinner with Emma【水】

2016-04-07 11:24 260 查看
B. Dinner with Emma

time limit per test
1 second

memory limit per test
256 megabytes

input
standard input

output
standard output

Jack decides to invite Emma out for a dinner. Jack is a modest student, he doesn't want to go to an expensive restaurant. Emma is a girl with high taste, she prefers elite places.

Munhattan consists of n streets and m avenues.
There is exactly one restaurant on the intersection of each street and avenue. The streets are numbered with integers from 1 to n and
the avenues are numbered with integers from 1 to m.
The cost of dinner in the restaurant at the intersection of the i-th street and the j-th
avenue is cij.

Jack and Emma decide to choose the restaurant in the following way. Firstly Emma chooses the street to dinner and then Jack chooses the avenue. Emma and Jack makes their choice optimally: Emma wants to maximize the cost of the dinner, Jack wants to minimize
it. Emma takes into account that Jack wants to minimize the cost of the dinner. Find the cost of the dinner for the couple in love.

Input

The first line contains two integers n, m (1 ≤ n, m ≤ 100)
— the number of streets and avenues in Munhattan.

Each of the next n lines contains m integers cij (1 ≤ cij ≤ 109)
— the cost of the dinner in the restaurant on the intersection of the i-th street and the j-th
avenue.

Output

Print the only integer a — the cost of the dinner for Jack and Emma.

Examples

input
3 4
4 1 3 5
2 2 2 2
5 4 5 1


output
2


input
3 3
1 2 3
2 3 13 1 2


output
1


Note

In the first example if Emma chooses the first or the third streets Jack can choose an avenue with the cost of the dinner 1. So
she chooses the second street and Jack chooses any avenue. The cost of the dinner is 2.

In the second example regardless of Emma's choice Jack can choose a restaurant with the cost of the dinner 1.

题意:

n*m 个餐厅对应不同的消费,有个人请女友去吃饭,先让女孩选择去的行,男孩选择列,交叉地点就是去的地方

女孩希望消费尽量高一些,男孩希望消费尽量低一点,问最终的消费额是多少?(好现实的问题,汗...)

题解:

题目比较水,但是需要想策略,这样想,无论女孩选哪一行,男孩肯定会选那一行中数字最小的列,那么就是说,女孩会选择行中的最小值比其他行中的最小值都要大的那一行,然后代码就比较精简了....动态更新就好..

/* http://blog.csdn.net/liuke19950717 */
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=1e9+5;
int main()
{
int n,m;
while(~scanf("%d%d",&n,&m))
{
int ans=0;
for(int i=0;i<n;++i)
{
int tp=maxn;
for(int j=0;j<m;++j)
{
int c;
scanf("%d",&c);
tp=min(tp,c);
}
ans=max(ans,tp);
}
printf("%d\n",ans);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: