acm编程比赛入门题目集.pdf

acm 编程比赛入门题目集 程序设计比赛试题 主办方:迅翔计算机协会 第 1 页 acm 编程比赛入门题目集 最少钱币数: 【问题描述】 这是一个古老而又经典的问题。用给定的几种钱币凑成某个 钱数,一般而言有多种方式。例如:给定了 6 种钱币面值为 2、 5、10、20、50、100,用来凑 15 元,可以用 5 个 2 元、1 个 5 元,或者 3 个 5 元,或者 1 个 5 元、1 个 10 元,等等。显然, 最少需要 2 个钱币才能凑成 15 元。 你的任务就是,给定若干个互不相同的钱币面值,编程计算, 最少需要多少个钱币才能凑成某个给出的钱数。 【要求】 【数据输入】输入可以有多个测试用例。每个测试用例的第 一行是待凑的钱数值 M (1=M=2000,整 ),接着的一行中, 第一个整 K (1 = K = 10)表示币种个数,随后是 K 个互不 相同的钱币面值 Ki(1 = Ki = 1000)。输入 M=0 时结束。 【数据输出】每个测试用例输出一行,即凑成钱数值M 最少 需要的钱币个数。如果凑钱失败,输出“Impossible”。你可以 假设,每种待凑钱币的数量是无限多的。 【样例输入】 第 2 页 acm 编程比赛入门题目集 15 6 2 5 10 20 50 100 1 1 2 0 【样例输出】 2 Impossible 第 3 页 acm 编程比赛入门题目集 Feli 的生日礼物 【问题描述】 Felicia 的生日是 11 月 1 日(和 Kitty 是同一天生的哦)。 于是 Feli 请来 Kitty 一起过生日。Kitty 带来了最新款的 “Kitty 猫”玩具准备送给Feli,不过她说,这份礼物可不是白 送的。Feli 要帮她一个忙,才能够得到心仪已久的玩具。 Kitty 说,“Kitty 猫”玩具已经卖出了 n!个,n=10^100 *_*,Kitty 想知道确切的数字,而不是无聊的 “一个数加个感叹号”。 Feli 听了大吃一惊。要知道,算出 n!是一个无比艰巨的任务。Feli 告诉 Kitty,就算 Feli 算出 n!,Kitty 也看不下去,因为当n=20 时,计算机的长整型已经存不下了 (Kitty 只能接受 1-9 之间的 数字)。于是 Kitty 说,你只要告诉我 n!最后一位非 0 的数就可 以了。Feli 想了想,立刻动手写了个程序算出了正确的答案。 现在,请你也试试看! 【要求】 【数据输入】每行一个 n,直到输入数据结束 【数据输出】对应输入的 n,每行输出一个答案 【样例输入】 1101 第 4 页 acm 编程比赛入门题目集 【样例输出】 8 第 5 页 acm 编程比赛入门题目集 蛇行矩阵 【问题描述】 蛇形矩阵是由 1 开始的自然数依次排列成的一个矩阵上三 角形。 【要求】 【数据输入】本题有多组数据,每组数据由一个正整

文档评论(0)

1亿VIP精品文档

相关文档