1251 - zlly长了一张包子脸

2024-04-23 20:08
文章标签 一张 1251 包子 zlly

本文主要是介绍1251 - zlly长了一张包子脸,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1251 - zlly长了一张包子脸

  • Time Limit: 1000 ms
  • Memory Limit: 65535 Kb

Description

zlly长了一张包子脸,他特别喜欢吃糖果,现在他手头有若干种糖果,每种糖果有个口味值,每种糖果有无数多个。然后娄童鞋也非常喜欢吃糖果,他的口味特别广泛,他喜欢各种各样的口味值,他要求zlly用现有的口味值拼出新的口味值。现在,娄童鞋想知道他不能吃到的口味值最大是多少?你能帮他的忙吗?
举个例子,现在zlly手头有3,6,10三种糖果,他拼不出口味值为1、2、4、5、7…17的糖果,所以结果就是17。
另外,糖果种类数<=10,每种糖果的口味值<=265,可以保证最大的结果不超过2,000,000,000。如果都可以拼出或最大值不存在,输出0。

Input

Line 1:糖果的数目n
Line 2..n+1:各种糖果的口味值;
输入文件有多case

Output

最大拼不出的口味数

Sample Input

3
3
6
10

Sample Output

17

Author

Administrator

Source

The First ACM-ICPC Nanjing Invitational Tournament

 

有两个数p,q,且gcd(q,p)=1,则最大无法表示成px+qy(x>=0,y>=0)的数是pq-q-p(对于n>pq-q-p,都可以表示成px+qy;而pq-q-p,就无法表示成px+qy)。

PS:http://www.nocow.cn/index.php/USACO/nuggets

#include <cstring>
#include <memory>
#include <algorithm>
#include <cstdio>
using namespace std;
#define MAX 265*265
bool dp[MAX+1];
int num[11];
int gcd ( int a, int b )
{
if ( a < b ) swap(a,b);
int temp = b;
if ( a % b )
{
temp = a;
a = b;
b = temp % b;
}
return b;
}
int main()
{
int n, i, j, k;
while ( scanf("%d",&n) != -1 )
{
for ( i = 1; i <= n; i++ )
scanf("%d",&num[i]);
k = num[1];
for ( i = 2; i <= n; i++ )
k = gcd ( k, num[i] );
if ( k != 1 )
{
printf("0\n");
continue;
}
memset(dp,0,sizeof(dp));
dp[0] = true;
for ( i = 1; i <= MAX; i++ )
{
for ( j = 1; j <= n; j++ )
if ( i >= num[j] )
dp[i] = dp[i] || dp[i-num[j]];
}
int res = 0;
for ( i = MAX; i >= 1; i-- )
if ( ! dp[i] )
{
res = i;
break;
}
printf("%d\n",res);
}
return 0;
}


 

这篇关于1251 - zlly长了一张包子脸的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/929758

相关文章

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

Oracle把一个表的某个字段更新到另一张表中

第一种方法: update tablea set column_name1=(select name2 from tableb where tableb.name3=tablea.name1) 只修改一个 update tablea set column_name1=(select name2 from tableb where tableb.name3='a') where tablea.na

阿里十年架构师用一张图告诉你什么是系统架构师

阿里十年架构师用一张图告诉你什么是系统架构师 Java架构解析 2018-11-03 20:54:41 这张图从架构师的综合能力、岗位认识、岗位职责等方面,清楚的画出了作为一个架构的基本准则。人人都想成为架构师,可作为架构你达到了图上面的要求了吗?   系统架构师是个神奇的岗位。为什么这么说,在一个人数不多的小公司,你可能什么都需要做,身体力行,做总监兼架构师或者是主管/高级开发兼架构

oracle存储过程Loop循环一张表插入到另外一张表

oracle存储过程Loop循环一张表插入到另外一张表   1、创建一个存储过程   Sql代码   create or replace procedure inserttest as   cursor cs is SELECT sales_id FROM t02salesinfo_backup;sales_id varchar(128);   begin   for c in c

项目实训:创建一张贺卡以及一只盒子——WEB开发系列27

以下是两道关于基础 CSS 盒模型和其他盒子相关特性的练习题,适合测试对这些概念的掌握程度,通过实际的设计任务来深入理解这些概念。 练习题 1: 设计一张中秋节海报贺卡 任务描述 制作一张精美的中秋节海报贺卡,用于庆祝这个传统节日。你的目标是应用 CSS 盒模型的各种属性来创建一个视觉上吸引人的海报,包括边距(margin)、边框(border)、内边距(padding)和内容区域(co

自然语言处理-应用场景-文本生成:Seq2Seq --> 看图说话【将一张图片转为一段文本】

人工智能-自然语言处理(NLP)-应用场景-Seq2Seq:看图说话【将一张图片转为一段文本】

风控建模流程一张图

对于刚进入职场的小伙伴来说,对风控建模岗的内容既好奇,又充满疑问。本文用一张图简单总结风控建模流程,让你快速了解风控建模岗的内容。 文章目录 一、模型开发流程二、什么是风控建模?三、风控建模流程一张图    一、模型开发流程    对于一般的业务模型,其本质是对现有业务问题的抽象理解,从模型生命周期来看,完整的模型开发流程一般包括:    1.模型设计: 抽象问题、确定建模

一张图看懂产品经理五大必备技能

产品经理需要具备的技能,我认为可以总结出以下五个方面: 1、需求 在需求之下又细分为3个技能,分别是需求分析、竞品分析、需求分级。 1.1需求分析 所谓需求分析要求产品经理首先要了解所在的行业和市场的情况,包括行业的当前规模、未来发展趋势、市场饱和度、市场同类产品的发展情况,市场过去3年的数据资料等等; 其次产品经理要通过用户研究,提炼出较为完整的用户画像。要完成这一要求,产品经理通

一张纸的厚度大约是0.1毫米(0.1mm)

一张纸的厚度大约是0.1毫米(0.1mm)。当这张纸对折100次时,其累积的厚度相当于2的100次方张纸的厚度,即:0.1毫米 × 2^100 ÷ 1000 = 1.2676506 × 10^26米。这个数字相当于太阳与地球之间的距离大约1.496 × 10^11米的8.47亿倍。