小哈哈


私信TA

用户名:20180390139

访问量:17546

签 名:

世界上怎么会有那么聪明的人呢?

等  级
排  名 217
经  验 6110
参赛次数 9
文章发表 38
年  龄 0
在职情况 学生
学  校 蓝翔挖掘机技校
专  业 网络工程

  自我简介:

我是个傻嗨,但是我会努力像个正常人

 

0.0分

9 人评分

  评论区

#include <stdio.h>
#define N 10000
int main(){
    int n,w,i,j;float a[N]={0},p[N]={0},g[N]={0},sum=0,free=0,t;scanf("%d %d",&n,&w);
    for(i=1;i<=n;i++){scanf("%f %f",&g[i],&p[i]); a[i]=p[i]/g[i];}
    for(i=1;i<=n;i++){
        for(j=1;j<=n;j++){
        if(a[i]<a[j])  {t=a[i];a[i]=a[j];a[j]=t;
                t=g[i];g[i]=g[j];g[j]=t;
                t=p[i];p[i]=p[j]; p[j]=t;}}}
    for(i=n;i>=1;i--){
        if(free+g[i]<=w){free+=g[i];sum+=p[i];}
        else{sum+=(w-free)*a[i];break;}}
    printf("%.1f",sum);
    return 0;}c语言版
2024-03-18 19:23:40
#include <stdio.h>
#define N 10000
int main(){
    int i,j,n,max; // n是物品的数量,max是背包装的最大重量
    float w[N]={0},p[N]={0},q[N]={0},sum=0,free=0,t;
    scanf("%d %d",&n,&max);
    for(i=1;i<=n;i++){
        scanf("%f %f",&w[i],&p[i]); // w[i]是第i件物品的重量,p[i]是第i件物品的价值
        q[i]=p[i]/w[i]; // 这里的q[i]是表示第i件物品的价值密度
    }
    for(i=1;i<=n;i++){ // 接下来这段代码虽然很长,但是很简单,这是个排序,就是按价值密度来排序,但是要注意,如果我们交换第i件物品和第j件物品时,他们的 1价值密度 2重量 3价值 都要同时交换,因为这是一一对应的,
        for(j=1;j<=n;j++){
            if(q[i]<q[j]){
                t=q[i];
                q[i]=q[j];
                q[j]=t;
                t=w[i];
2024-03-18 17:48:39
C语言版本:
#include<stdio.h>
#define N 10000
int main(){
    int i,j,n,max;  //n是物品的数量,max是背包装的最大重量
    float w[N]={0},p[N]={0},q[N]={0},sum=0,free=0,t;
//    cin>>n>>max;
	scanf("%d %d",&n,&max);
    for(i=1;i<=n;i++){
    	scanf("%f %f",&w[i],&p[i]);	//w[i]是第i件物品的重量,p[i]是第i件物品的价值
//      cin>>w[i]>>p[i];
        q[i]=p[i]/w[i];  //这里的q[i]是表示第i件物品的价值密度
    }
    for(i=1;i<=n;i++){      //接下来这段代码虽然很长,但是很简单,这是个排序,就是按价值密度来排序,但是要注意,如果我们交换第i件物品和第j件物品时,他们的 1价值密度 2重量  3价值  都要同时交换,因为这是一一对应的,
        for(j=1;j<=n;j++){
            if(q[i]<q[j]){
                t=q[i];
                q[i]=q[j];
2022-03-01 15:02:56
为什么提交上不对?
2021-12-11 16:50:18
不好意思,提交的时候忘了改了ヾ(◍°∇°◍)ノ゙,其实C++这里的代码跟C差不多一样的,就是头文件和输入输出不一样而已
2019-11-20 14:41:13
哥哥,您这是C++呀
2019-11-17 20:34:44
  • «
  • 1
  • »