PTA田忌赛马

发布时间:2022-06-20 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PTA田忌赛马脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

一、题目描述

  

PTA田忌赛马

 

 二、解题思路

  我们把tj的马和qw的马从小到大排个序

  情况1:如果tj最大的马比qw最大的马快,则答案加1

  情况2:如果tj最慢的马比qw最慢的马快,则答案加1

  情况3:如果tj最慢的马比qw最快的马慢,则答案减1(也就是用最慢的马去耗qw最快的马)

  情况4:如果tj最慢的马和qw最快的马一样快,且不符合以上三种情况,那么肯定这2n匹马的速度相同,故不需要对答案做操作

三、代码实现

 1 #include "bits/stdc++.h"
 2 using namespace std;
 3 int tj[1010];
 4 int qw[1010];
 5 int main()
 6 {
 7     int n;
 8     while(cin >> n){
 9         if(n == 0)
10             break;
11         for(int i = 1;i <= n;i++)
12             cin >> tj[i];
13         for(int i = 1;i <= n;i++)
14             cin >> qw[i];
15         sort(tj + 1,tj + 1 + n);
16         sort(qw + 1,qw + 1 + n);
17         int ans = 0;
18         int fa,fb,la,lb;
19         fa = fb = 1;
20         la = lb = n;
21         for(int i = 1;i <= n;i++){
22             if(tj[fa] > qw[fb]){
23                 ans++;
24                 fa++,fb++;
25             }
26             else if(tj[la] > qw[lb]){
27                 ans++;
28                 la--,lb--;
29             }
30             else {
31                 if(tj[fa] < qw[lb]){
32                     ans--;
33                     fa++;
34                     lb--;
35                 }
36             }
37         }
38         cout << ans * 200 << endl;
39     }
40     return 0;
41 }

脚本宝典总结

以上是脚本宝典为你收集整理的PTA田忌赛马全部内容,希望文章能够帮你解决PTA田忌赛马所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: