SWUST-最多苹果数量
2023-12-21 12:53:44
显然每次装重量最小的苹果是最优的。
代码如下(c++)
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
int m, n,sum=0;
cin >> m >> n;
int* arr = new int[n];
for (int i = 0; i < n; i++) cin >> arr[i];
sort(arr, arr + n, less<int>());
for (int i = 0; i < n; i++) {
if (sum + arr[i] > m) {
cout << i << endl;
return 0;
}
else {
sum += arr[i];
}
}
cout << n << endl;
return 0;
}
(c)
#include<stdio.h>
#include<stdlib.h>
int main(){
int m,n,sum=0;
scanf("%d %d",&m,&n);
int *arr=(int *)malloc(n*sizeof(int));
for (int i=0;i<n;i++) scanf("%d",arr+i);
for (int i=0;i<n-1;i++){
for (int j=0;j<n-1-i;j++){
if (arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
for (int i=0;i<n;i++){
if (sum+arr[i]>m){
printf("%d\n",i);
return 0;
}else {
sum+=arr[i];
}
}
printf("%d\n",n);
return 0;
}
文章来源:https://blog.csdn.net/2302_79277225/article/details/135120370
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!