P9728 [EC Final 2022] Dining Professors 题解
_Star_Universe_ · · 题解
题目传送门
看完了其他题解,总算学会了这道题,也来发一篇题解吧。
思路
算法:贪心。首先第
最好的情况就是所有人都能吃辣,即最大满意度为
从这篇题解里学到了由于圆桌是一个环,要有这么一句代码:
i[0]=i[n];i[n+1]=i[1];
代码
#include<bits/stdc++.h>
using namespace std;
int n,a,ans,i[100005],z[100005];
signed main(){
cin>>n>>a;
for(int k=1;k<=n;k++){
cin>>i[k];
}
i[0]=i[n];i[n+1]=i[1];
for(int k=1;k<=n;k++){
for(int j=k-1;j<=k+1;j++){
if(i[j]!=1){
z[k]++;
}
}
}
sort(z+1,z+n+1);
for(int k=1;k<=a;k++){
ans+=z[k];
}
cout<<3*n-ans;
return 0;
}
因为本蒟蒻是跟着其他题解学习的,可能有部分内容相似,如有侵权立即撤下。