杭电1052——田忌赛马
来源:互联网 发布:ios10gamecenter数据 编辑:程序博客网 时间:2024/05/29 17:46
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1052
唉,虽是贪心,还是未能理解透啊:
1,从田忌最差的马开始,能胜利就胜利,而且将胜利最大化
2,把剩下的不能取胜的最差的马依次与王剩下最的好的马匹配即可,其中可能还会有平局,记录即可
#include<iostream>
#include<sstream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
int Tian[1500],King[1500],vist[1500],visk[1500];
int n;
int cmp(int a,int b){
return a>b;
}
int main(){
while(cin>>n)
{
if(!n) break;
for(int i=0;i<n;i++)
cin>>Tian[i];
for(int i=0;i<n;i++)
cin>>King[i];
sort(Tian,Tian+n,cmp);
sort(King,King+n,cmp);
memset(vist,0,sizeof(vist));
memset(visk,0,sizeof(visk));
int win=0,fair=0;
for(int i=n-1;i>=0;i--)
{
int ti=n;
for(int j=n-1;j>=0;j--)
if(Tian[i]>King[j] && !visk[j])
ti=j;
if(ti!=n) {
win++;
visk[ti]=1;
vist[i]=1;
}
}
for(int i=n-1;i>=0;i--)
if(!vist[i]){
for(int j=0;j<n;j++){
if(!visk[j])
{
if(Tian[i]==King[j]) fair++;
vist[i]=1;
visk[j]=1;
break;
}
}
}
cout<<(2*win-n+fair)*200<<endl;
}
return 0;
}
- 杭电1052——田忌赛马
- 杭电1052 田忌赛马
- 杭电acm 1052 田忌赛马
- 田忌赛马 南阳oj364 HDU杭电1052【贪心】
- 杭电OJ1052 田忌赛马
- 【杭电OJ】--1052-田忌赛马(贪心,双端队列)
- 【杭电oj】1052 - Tian Ji -- The Horse Racing(田忌赛马,贪心 & 双端队列)
- hdu1052 田忌赛马 —— 贪心
- HDU 1052 田忌赛马
- HDU 1052 田忌赛马
- hdu 1052 田忌赛马
- hdu 1052 田忌赛马
- hdu 1052 田忌赛马
- hdu-1052田忌赛马
- hdu 1052 田忌赛马
- HDU 1052 田忌赛马
- ZOJ 2422——贪心 田忌赛马
- 运筹学总结——田忌赛马哲学
- 1065.A+B and C (64bit)
- 如何成为强大的程序员
- cookie的path
- iis7 发布mvc 遇到的HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容
- 【机器学习中的数学】广义逆高斯分布及其特例
- 杭电1052——田忌赛马
- [redis]redis五种数据类型命令汇总整理
- Boost signal 代码示例
- IIS的安装和配置
- Spark API编程动手实战-07-join操作深入实战
- QT编译qtdesigner
- NYOJ 题目93汉诺塔(三)
- 黑马程序员——Java基础—正则表达式
- 数据库中 connect by。。start with。。