社区讨论
30玄关求调
P10483小猫爬山参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @m2lmbenw
- 此快照首次捕获于
- 2024/10/23 16:34 去年
- 此快照最后确认于
- 2024/10/23 16:42 去年
CPP
#include<bits/stdc++.h>
using namespace std;
long long a,b,c,d,xm[20];//创建数组
long long heavy,sum;//求出缆车体积和总共需要的缆车数量
bool cat[20];//判断小猫还在不在
int main(){
cin>>a>>heavy;
b=a;//记录小猫还剩多少
for(int i=0;i<a;i++)cin>>xm[i];
sort(xm,xm+a);//从小到大排序
while(b>0){
sum++;//钱+1
for(int i=0;i<a;i++){
if(cat[i])continue;//跳过
if(c+xm[i]>heavy)break;//如果满员了
else{
c+=xm[i];//增加小猫的总重量
b--;//还需要运送的小猫-1
cat[i]=true;//标记小猫
}
}
c=0;//初始化
}
cout<<sum;
return 0;
}
思路应该是搜索+贪心,过了#1#2#13#14
回复
共 0 条回复,欢迎继续交流。
正在加载回复...