zoukankan      html  css  js  c++  java
  • NYOJ 106(背包)

     //此为背包问题 ,289为0-1背包 
    #include<stdio.h>
    #include<stdlib.h> 
    typedef struct data 
    {
       int w;
       int v;    
    }data; 
    int cmp(const void *a,const void *b)
    {
       return ((data*)a)->v-((data*)b)->v; 
    }//不加括号不行啊 
    int main()
    { 
        data a[10];
        int T,v,w,sum,s,m;
        scanf("%d",&T);
        while(T--)
        {
         sum=0;
         scanf("%d%d",&s,&m);
         for(int i=0;i<s;i++)
    	     scanf("%d%d",&a[i].v,&a[i].w);	
    	 qsort(a,s,sizeof(data),cmp);
    	 for(int i=s-1;m>0;i--)
    	 //发现i也要加上int,否则\调试\未命名1.cpp name  lookup of `i' changed for new ISO `for' scoping  
        	 if(a[i].w<=m)
             {
                sum+=a[i].v*a[i].w;
                m-=a[i].w;
             }
        	 else 
             {
                  sum+=m*a[i].v;
                   m=0;
             }
    	 printf("%d\n",sum);	    
        }  
        system("pause");
        return 0;  		
    } 
    
    
    
    
            
    

      

  • 相关阅读:
    Animation
    Calendar
    ToggleButton
    ASP.NET备份恢复SqlServer数据库
    ConfirmButton
    DropDown
    备份与恢复ACCESS数据库
    PopupControl
    CascadingDropDown
    RoundedCorners
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2493508.html
Copyright © 2011-2022 走看看