hdu 1052 Tian Ji -- The Horse Racing
2013-02-05 13:46
369 查看
贪心思路:田忌要用最小的代价(最慢的马)输一场比赛,而要耗费掉齐王最大的资源;齐王用最大的代价赢田忌,以最大的代价输田忌。
先把田忌和国王的马排序。
每次取田忌的最快的马与国王最快的马比较,有三种情况。
一,田忌最快的马比国王最快的快,那么直接拿田忌最快的马去赢国王最快的马。
二,田忌最快的马比国王最快的慢,那么拿田忌最慢的马去输国王最快的马。
三,田忌最快的马与国王最快的马速度一样。
先拿田忌最慢的马与国王最慢的马比较。
若田忌比国王快,直接赢掉国王最慢的马。
否则田忌最慢的马再去与国王最快的马比。
如果最快最慢的马都一样,用田忌最慢的马和国王最快的马比。
AC代码:
先把田忌和国王的马排序。
每次取田忌的最快的马与国王最快的马比较,有三种情况。
一,田忌最快的马比国王最快的快,那么直接拿田忌最快的马去赢国王最快的马。
二,田忌最快的马比国王最快的慢,那么拿田忌最慢的马去输国王最快的马。
三,田忌最快的马与国王最快的马速度一样。
先拿田忌最慢的马与国王最慢的马比较。
若田忌比国王快,直接赢掉国王最慢的马。
否则田忌最慢的马再去与国王最快的马比。
如果最快最慢的马都一样,用田忌最慢的马和国王最快的马比。
AC代码:
#include<iostream> #include<algorithm> using namespace std; #define NUM 1005 int k[NUM],t[NUM]; int main() { int n,i,j,kn,win;//i:己方最小,j:对方最小;两头往中间遍历 while(cin>>n&&n!=0){ for(i=0;i<n;i++) cin>>t[i]; for(i=0;i<n;++i) cin>>k[i]; sort(k,k+n); sort(t,t+n); win=0;kn=n;//n:己方最大,kn:对方最大 for(i=0,j=0;i<n;){ if(t[i]<k[j]){//无平局,且己方最小<对方最小 i++;//拿最小拼对方最大 kn--; win--; } else if(t[i]>k[j]){//无平局,且己方最小>对方最小 i++;//直接赢 j++; win++; } else {//己方最小=对方最小 if(t[n-1]>k[kn-1]){//己方最大>对方最大 n--;kn--;//直接赢 win++; } else if(t[n-1]<k[kn-1]){//己方最大<=对方最大 i++;kn--;//拿最小拼对方最大 win--; } else if(t[n-1]==k[kn-1]){//最小与最大都与对方相等 if(t[i]<k[kn-1])//拿最小拼对方最大 win--; i++;kn--;//己方最小=对方最大,则平局:指针往前移,win不变 } } } cout<<win*200<<endl; } return 0; }
相关文章推荐
- HDU 1052 Tian Ji -- The Horse Racing
- HDU 1052 Tian Ji -- The Horse Racing(贪心)
- [ACM_HDU_1052]Tian Ji -- The Horse Racing(贪心算法)
- hdu 1052 Tian Ji -- The Horse Racing(贪心)
- HDU 1052 Tian Ji -- The Horse Racing
- HDU-1052-Tian Ji -- The Horse Racing(C++ && 简单贪心)
- HDU-1052 Tian Ji -- The Horse Racing (贪心)
- hdu -1052-Tian Ji -- The Horse Racing
- hdu 1052 Tian Ji -- The Horse Racing(贪心)
- POJ 2287 HDU 1052 Tian Ji -- The Horse Racing
- hdu 1052 Tian Ji -- The Horse Racing(贪心)
- HDU 1052 Tian Ji -- The Horse Racing
- HDU 1052 Tian Ji -- The Horse Racing (贪心)
- HDU - 1052 Tian Ji -- The Horse Racing
- HDU 1052 - Tian Ji -- The Horse Racing(贪心)
- HDU 1052 Tian Ji -- The Horse Racing
- hdu 1052 Tian Ji -- The Horse Racing(贪心)
- hdu_1052_Tian Ji -- The Horse Racing_贪心
- HDU 1052 Tian Ji -- The Horse Racing
- HDU 1052 Tian Ji -- The Horse Racing