题解:P11043 [蓝桥杯 2024 省 Java B] 分布式队列
kobebraint · · 题解
题目大意
在主节点的每个元素中,有多少元素被所有的副节点同步了。
该怎么做呢
每个副节点都是按顺序从主节点中同步的,所以同步多的肯定已经同步了比他同步少的所有元素。我们只需要求同步最少的节点同步了多少元素就可以了。
对于每个add,因为不考虑同步了什么元素,所以不管。
对于每个sync,题目数据保证执行同步操作时,
对于每个query,输出长度最短的副节点的长度就可以了。
#include<bits/stdc++.h>
using namespace std;
long long query[50],n,x,mi;
string op;
int main(){
cin>>n;
while(cin>>op){
if(op=="add"){
cin>>x;
}else if(op=="query"){
cout<<*min_element(query+1,query+n)<<endl;
}else{
cin>>x;
query[x]++;
}
}
return 0;
}
输入没有告诉你多少行,记得用while。
或许是没有压行的最短的代码?