1 条题解
-
1
完整版题解
#include<bits/stdc++.h> using namespace std; int n, a[2001], //田忌的马 b[2001], //齐王的马 m1, m2, qian; int main(){ scanf("%d",&n); for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=0;i<n;i++) scanf("%d",&b[i]); sort(a,a+n); sort(b,b+n); int n1=n-1, n2=n-1; while(m1<=n1){ if(a[n1]>b[n2]){ //田忌最快的比齐王最快的快 qian+=200; //赢钱 n1--,n2--; //两边各去掉一匹马 }else if(a[n1]<b[n2]){//田忌最快的赢不了齐王最快的,就丢一匹最慢的 qian-=200; //输钱 m1++,n2--; }else{ //如果 势 均 力 敌 的话 if(a[m1]>b[m2]){ //田忌最慢的能赢齐王最慢的,就上 qian+=200; //赢钱 m1++,m2++; }else{ //赢不了就用最慢的消耗齐王最快的 if(a[m1]<b[n2]) qian-=200; //我 再 忍 你 一 手 m1++,n2--; } } } printf("%d",qian); return 0; }
- 1
信息
- ID
- 644
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 4
- 标签
- 递交数
- 6
- 已通过
- 1
- 上传者