1. 程式人生 > >POJ 2287 Tian Ji -- The Horse Racing&&浙江科技學院第十三屆程式設計競賽1006 田忌賽馬後傳(貪心)

POJ 2287 Tian Ji -- The Horse Racing&&浙江科技學院第十三屆程式設計競賽1006 田忌賽馬後傳(貪心)

思路:如果田忌最慢的比齊王最慢的快,或者田忌最快的比齊王最快的快,那麼就比,否則讓田忌最慢的和齊王最快的比。

#include<map>
#include<queue>
#include<cmath>
#include<cstdio>
#include<stack>
#include<iostream>
#include<cstring>
#include<algorithm>
#define inf 0x3f3f3f3f
#define eps 1e-8
#define mod 1000000007
#define ls l,mid,rt<<1
#define rs mid+1,rt,rt<<1|1 #define LL __int64 using namespace std; int t[1010]; int q[1010]; int main(){ int n,m,i,j,k,cla; while(~scanf("%d",&n)&&n){ for(i = 0;i < n;++ i){ scanf("%d",&t[i]); } for(i = 0;i < n;++ i){ scanf("%d
"
,&q[i]); } sort(q,q + n); sort(t,t + n); int ft = n-1; int fq = n-1; int mt = 0; int mq = 0,ans = 0; for(i = 0;i < n;++ i){ if(t[mt] > q[mq]){ ans ++,mt++,mq++; } else if(t[ft] > q[fq]
){ ans ++,ft--,fq--; } else{ if(q[fq] > t[mt]) ans --; mt++,fq--; } } printf("%d\n",ans*200); } return 0; }