- 取石子
加农炮233
- 2025-10-3 15:59:30 @
#include <bits/stdc++.h>
using namespace std;
int canno[1000003];
int highet[1000003];
int A,B;
int main() {
int i,j,h_max,gun,pos;
scanf("%d%d",&A,&B);
h_max = -1;
for(i = 1;i <= A;i ++) {
scanf("%d",highet+i);
h_max=max(h_max,highet[i]);
canno[i]=h_max;
}
int count=0;
for(i = 1;i <= B;i ++) {
scanf("%d",&gun);
if(gun<=canno[0]||gun>canno[A])
continue;
pos=lower_bound(canno+1,canno+1+A,gun)-canno;
highet[pos-1]++;
canno[pos-1]=max(canno[pos-1],highet[pos-1]);
}
for(i = 1;i <= A;i ++) {
printf("%d\n",highet[i]);
}
return 0 ;
}
1 条评论
-
孙易莘EASON @ 2025-10-3 19:42:32
真有人发啊
- 1
信息
- ID
- 116
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 56
- 已通过
- 9
- 上传者