专栏文章
题解:P13700 [NWERC 2023] Arranging Adapters
P13700题解参与者 3已保存评论 2
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @miobqnzs
- 此快照首次捕获于
- 2025/12/02 16:36 3 个月前
- 此快照最后确认于
- 2025/12/02 16:36 3 个月前
P13700 [NWERC 2023] Arranging Adapters
思路
这是一个典型的贪心算法,需要优先插入长度较短的充电线,直到插座满了或充电线没有了为止。模拟就好了
AC代码
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5*2+10;
int v[N];
int n,s;
int ans=-1;
int x=0,y=0;
signed main(){
cin>>n>>s;
s--;
for(int i=1;i<=n;++i) cin>>v[i];
sort(v+1,v+n+1);
if(s!=0){
for(int i=1;i<=n;i++){
s-=v[i]/3;
ans++;
if(v[i]%3==1) x++;
else if(v[i]%3==2) y++;
int tmp=0;
if(x>=y) tmp=y+(x-y+1)/2;
else tmp=y;
if(tmp>=s) break;
}
}
cout<<ans<<'\n';
return 0;
}
相关推荐
评论
共 2 条评论,欢迎与作者交流。
正在加载评论...