易截截图软件、单文件、免安装、纯绿色、仅160KB

用c实现背包问题(贪心)

好久以前做的一个程序,贪心策略实现背包问题,c实现。
总结在这里,以备以后和别人查找。
//背包问题
#include "stdio.h"
#define MAX 10
void main()
{
 int w[MAX]={0,10,130,15,60,25};      //存放质量
 int v[MAX]={0,30,5,10,20,25};   //存放价值
 float a[MAX]={0};  //存放取的量,即输出结果。
 int m,n,i,max;
 m=100;n=5;
 /*
   
    scanf("%d %d",&m,&n);
     for(i=1;i<=n;i++)
      scanf("%d",&w[i]);    //重量和价值都从1号开始存,零号(=0)空下,一会做max
     for(i=1;i<=n;i++)
      scanf("%d",&v[i]);*/
   
 for(i=1;i<=n;i++)
  printf("%d: %d    ",w[i],v[i]);
 do{
  max=0;
  for(i=1;i<=n;i++)
   if(v[i]>v[max])
   {
    max=i;
   }
   v[max]=0;
  if(m>=w[max])   //如果够放。
  {
   m-=w[max];
   a[max]=1;
  }
  else
  {
               //这样得到一个负值,就会do while跳出循环。
   a[max]=((float)m)/w[max];
   m-=w[max];
  }
 }while(m>0);
 printf("\nThe result is:\n");
 for(i=1;i<=n;i++)
  printf("%f  ",a[i]);
 
}


相关文档:

深入C/C++之基于CheckStackVars的安全检查(VS2008)

最近一直忙毕业的相关事情,加上工作,转眼间,又到月底了,之前承诺的每月一篇博文,前几天就一直在寻找到底要写什么,近两天又突然发现有很多东西可以写。本篇就先延续之前的一篇基于Cookie的安全检查机制(深入C/C++之基于Cookie的安全检查(VS2005))来介绍下另外一种在DEBUG版本下的安全检查,也就是CheckStackVars检 ......

linux下C语言多线程编程实例

学东西,往往实例才是最让人感兴趣的,老是学基础理论,不动手,感觉没有成就感,呵呵。
   下面先来一个实例。我们通过创建两个线程来实现对一个数的递加。
或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉。
下面是我们的代码:
/*thread_example.c : c multiple thread p ......

纯Java版工行B2C网银接口调用总结

1.首先看懂官方文档
2.icbc.jar这个jar包一定要要到!这是进行base64加密解密,以及
使用工行证书签名的重要工具类。
3.采取纯Java编码,要确保用对证书,放在D盘根目录下(其他路径亦可)。
4.编写JSP接口页面,字段必须与工行的一一对应。
而且如tranData等字段进行base64加密后或者签名后 必须以"“双引号扩上才 ......

[转]C/C++的64位整型

Technorati 标签: C++ 原文地址:http://www.byvoid.com/blog/c-int64/ 在C/C++中,64为整型一直是一种没有确定规范的数据类型。现今主流的编译器中,对64为整型的支持也是标准不一,形态各异。一般来说,64位整型的定义方式有long long和__int64两种(VC还支持_int64),而输出到标准输出方式有printf(“%lld”,a),printf ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号