热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HDU1085捕获本·拉登!

问题描述众所周知,本·拉登是一位臭名昭著的恐怖分子,他已失踪多年。但最近有报道称,他藏匿在中国杭州!虽然他躲在杭州的一个洞穴中不敢外出,但近年来他因无聊而沉迷于数学问题,并声称如果有人能解出他的题目,他就自首。
问题描述
众所周知,本·拉登是一位臭名昭著的恐怖分子,他已失踪多年。但最近有报道称,他藏匿在中国杭州!
“哦,天哪!这太可怕了!”
别害怕,伙计们。尽管他躲在一个洞穴里不敢外出,但近年来他因为无聊而投身于一些数学问题中,并声称如果有人能解出他的题目,他就自首。
哈哈!显然,本·拉登对自己的智力过于自信!但是,他的题目是什么呢?
“给出一些中国硬币(三种——1元、2元、5元),它们的数量分别为num_1、num_2和num_5,请求出你无法用这些硬币支付的最小金额。”
作为超级ACMer,你应该能轻松解决这个问题,并别忘了从布什那里拿走2500万美元!
输入
输入包含多个测试用例。每个测试用例包含3个正整数num_1、num_2和num_5(0<=num_i<=1000)。一个包含0 0 0的测试用例表示输入结束,该测试用例不需要处理。
输出
对于每个测试用例,输出一个无法用给定硬币支付的最小正数值,每个结果占一行。
样例输入

1 1 3
0 0 0

样例输出

4

使用母函数求解:

#include
#include
#include
using namespace std;
#include
int a[10005], b[10005];
int num[4];
int main()
{
freopen("C:\\in.txt", "r", stdin);
while (scanf("%d %d %d", &num[1], &num[2], &num[3]) != EOF) {
int v[4] = {0, 1, 2, 5};
if (!num[1] && !num[2] && !num[3]) break;
int sum = 0;
for (int i = 1; i <= 3; i++)
sum += num[i] * v[i];
memset(a, 0, sizeof(a));
memset(b, 0, sizeof(b));
a[0] = 1;
for (int i = 1; i <= 3; i++) {
for (int j = 0; j <= sum; j++)
if (a[j])
for (int k = 0; k * v[i] + j <= sum && k <= num[i]; k++)
b[k * v[i] + j] += a[j];
for (int j = 0; j <= sum; j++) {
a[j] = b[j];
b[j] = 0;
}
}
int index = 0;
for (int i = 0; i <= 10000; i++) {
if (!a[i]) {
index = i;
break;
}
}
printf("%d\n", index);
}
return 0;
}


推荐阅读
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • 在前两篇文章中,我们探讨了 ControllerDescriptor 和 ActionDescriptor 这两个描述对象,分别对应控制器和操作方法。本文将基于 MVC3 源码进一步分析 ParameterDescriptor,即用于描述 Action 方法参数的对象,并详细介绍其工作原理。 ... [详细]
  • 本文详细介绍了W3C标准盒模型和IE传统盒模型的区别,探讨了CSS3中box-sizing属性的使用方法及其在布局中的重要性。通过实例分析,帮助读者更好地理解和应用这一关键概念。 ... [详细]
  • MQTT技术周报:硬件连接与协议解析
    本周开发笔记重点介绍了在新项目中使用MQTT协议进行硬件连接的技术细节,涵盖其特性、原理及实现步骤。 ... [详细]
  • 本文介绍了如何在C#中启动一个应用程序,并通过枚举窗口来获取其主窗口句柄。当使用Process类启动程序时,我们通常只能获得进程的句柄,而主窗口句柄可能为0。因此,我们需要使用API函数和回调机制来准确获取主窗口句柄。 ... [详细]
author-avatar
小孩的内心世界
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有