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 }
本文来自博客园,作者:{scanner},转载请注明原文链接:{https://home.cnblogs.com/u/scannerkk/}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具