NC214361. 滑板比赛
描述
输入描述
第一行两个整数 n,m。1 ≤ m ≤ n ≤ 2e5第二行包含 n 个整数 a[i], 代表牛牛所有会的动作的华丽值。0 ≤ a[i] ≤ 1e9第三行包含 m 个整数b[i],代表牛妹所有会的动作的华丽值。给出的顺序就是牛妹参加比赛所用动作的顺序。0≤b[i]≤1e9
输出描述
一个整数,代表牛牛最多可能赢的比赛次数。
示例1
输入:
5 5 3 4 6 2 7 4 4 3 2 6
输出:
4
C++(clang++11) 解法, 执行用时: 160ms, 内存消耗: 1784K, 提交时间: 2020-12-06 00:11:10
#include<bits/stdc++.h> using namespace std; int a[200005],b[200005],ans=0,n,m; int main(){ cin>>n>>m; for(int i=1;i<=n;i++)cin>>a[i]; for(int i=1;i<=m;i++)cin>>b[i]; sort(a+1,a+1+n); sort(b+1,b+1+m); int j=1; for(int i=1;i<=n;i++){ if(a[i]>b[j]&&j<=m)ans++,j++; } cout<<ans<<endl; return 0; }
Python3 解法, 执行用时: 268ms, 内存消耗: 30404K, 提交时间: 2021-05-20 19:12:25
n,m=map(int,input().split()) a=list(map(int,input().split())) b=list(map(int,input().split())) a.sort() b.sort() t=0 for i in b[::-1]: if a[-1]>i: a.pop() t+=1 print(t)