时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
田忌和齐王赛马,两人各有n匹马,输入第1行是田忌赛马速度,第2行是齐王的,分别是两个无序正整数组给出。齐王的赛马出场顺序总是从快到慢,问:田忌合理安排顺序后,最多能赢机场比赛?(注意:速度相同不算赢)
输入
两行,每行一个数组
输出
数字表示田忌能赢的场数
样例输入
3 1 5
6 2 4
样例输出
2
解题思路:两个数组排序之后,齐王的马从快到慢,齐王每出场一匹马,如果田忌最快的马比它快答案++,去掉这匹马否则反正都赢不了,把田忌最慢的马剔除掉。
using namespace std;
const int Maxn = 1005;
int main()
{
int c[2*Maxn];
int count = 0;
while(cin >> c[count++]);
count
int first = 0, second = count/2, j = count-1;
sort(c, c+second);
sort(c+second, c+count);
int ans = 0;
second
while(j>=count/2)
{
if(c[j]>=c[second])
first++;
else
{
ans++;
second
}
j
}
cout << ans << endl;
return 0;
}
/*
3 1 5
6 2 4
*/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)