蓝桥杯 算法训练 最大体积 (gcd+完全背包)---------------------C语言——菜鸟级

21人阅读 评论(0) 收藏 举报
分类:

/*问题描述
  每个物品有一定的体积(废话),不同的物品组合,装入背包会战用一定的总体积。
假如每个物品有无限件可用,那么有些体积是永远也装不出来的。为了尽量装满背包,
附中的OIER想要研究一下物品不能装出的最大体积。题目保证有解,如果是有限解,
保证不超过2,000,000,000
  如果是无限解,则输出0
输入格式
  第一行一个整数n(n<=10),表示物品的件数
  第2行到N+1行: 每件物品的体积(1<= <=500)
输出格式
  一个整数ans,表示不能用这些物品得到的最大体积。
样例输入
3
3
6
10
样例输出
17
*/

#include<stdio.h>
#include<string.h>
 int gcd(int a,int b)
 {  if(b==0)return a;
     else return gcd(b,a%b);
 }
 int main()
 {
  int n,t,i,m,a,b;long long int j,ans,t1;int s[20]; long int dp[80003];
  scanf("%d",&n);
  scanf("%d",&s[0]);
    t=s[0];
   for(i=1;i<n;i++)
   { scanf("%d",&s[i]);
     t=gcd(t,s[i]);
     if(s[i]<s[0]){int m=s[0];s[0]=s[i];s[i]=m;}

   }
 if(t==1&&s[0]!=1)
 {    memset(dp,-1,sizeof(dp));t1=0;dp[0]=1;
      for(i=0;i<n;i++)
      for(j=s[i];j<80000;j++)
        {if(dp[j-s[i]]!=-1)dp[j]=1;
         if(i==n-1&&dp[j]==1)
         {t1++;if(t1>=s[0])break;}
          else t1=0,ans=j;
        }
        if(ans==79999)ans=s[0]-1;
         printf("%ld\n",ans); 
}
 else printf("0\n");  
 return 0;
 } 
查看评论

C语言那些事儿

互联网上首家使用C99录制的C语言教程。 全面、专业。最标准的C语言教程。
  • 2016年05月08日 10:41

蓝桥杯 算法训练 最大体积

这题,我用搜索写,超时了,,70分,数据太大了真坑,, 不说了都是泪,转载一手满分代码,, 转自: http://www.cnblogs.com/cao-lei/p/7218782.html ...
  • qq_36783389
  • qq_36783389
  • 2017-12-03 16:50:11
  • 376

蓝桥杯—— 算法训练 最大最小公倍数(贪心)

问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。输入格式输入一个正整数N。输出格式输出一个整数,表示你找到的最小公倍数。样例输入9样例输出504数据规模与约定1 &...
  • SaltedVegetable
  • SaltedVegetable
  • 2018-02-08 17:23:15
  • 50

蓝桥杯 - 算法训练 最大最小公倍数 C语言实现

算法训练 最大最小公倍数 首先,本博客转载于“娜一笑最倾城”,对他的分析加上自己的理解,加上标记锁定代码和思路。 思路:若n 和 n-1和n-2 三个数 两两互质的话,那么结果就是这三个数...
  • qq_34845121
  • qq_34845121
  • 2017-02-13 23:27:34
  • 826

蓝桥杯-算法训练之最大最小公倍数——ALGO-2

算法训练 最大最小公倍数   时间限制:1.0s   内存限制:256.0MB     问题描述 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。...
  • lx417147512
  • lx417147512
  • 2014-02-28 15:06:51
  • 4701

蓝桥杯 算法训练 金陵十三钗(dp+状态压缩) ----------------------------C语言——菜鸟级

/*问题描述   在电影《金陵十三钗》中有十二个秦淮河的女人要自我牺牲代替十二个女学生去赴日本人 的死亡宴会。为了不让日本人发现,自然需要一番乔装打扮。但由于天生材质的原因, 每个人和每个人之间...
  • qq_41923622
  • qq_41923622
  • 2018-03-31 11:12:57
  • 30

蓝桥杯 算法训练 最大的算式(动态规划)

问题描述   题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大。因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有...
  • u013993712
  • u013993712
  • 2016-05-08 00:37:27
  • 1664

蓝桥杯 比赛安排 (深搜) -----------------------C语言

/*问题描述   设有有2 n(n&amp;lt;=6)个球队进行单循环比赛,计划在2 n – 1天内完成, 每个队每天进行一场比赛。设计一个比赛的安排,使在2 n – 1天内每个队都与不同的对手...
  • qq_41923622
  • qq_41923622
  • 2018-03-30 13:38:18
  • 51

蓝桥杯 ALGO-2算法训练 最大最小公倍数(贪心算法)

问题描述 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。 输入格式 输入一个正整数N。 输出格式 输出一个整数,表示你找到的最小公倍数。 样例输入 ...
  • liuchuo
  • liuchuo
  • 2016-07-21 23:42:58
  • 936

蓝桥杯——说好的进阶之完全背包问题

有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c,价值是w。将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。...
  • hymanxq
  • hymanxq
  • 2014-05-11 07:34:05
  • 1646
    个人资料
    持之以恒
    等级:
    访问量: 0
    积分: 345
    排名: 0
    文章存档
    最新评论