编程高手无极登录网址带你玩转碎纸机

2997次
无极新闻,无极注册1960,无极官方,

【主管Q:34518577】无极登录网址编程高手带你玩转碎纸机,在我们现代生活中,各种各样的智能化的物品层出不穷,给我们的生活带来的极大的便利,这一切都离不开程序员的编程,今天我们一起欣赏一下编程高手如何玩转碎纸机,不懂程序没关系,纯欣赏一下。

描述 你现在负责设计一种新式的碎纸机。一般的碎纸机会把纸切成小片,变得难以阅读。而你设计的新式的碎纸机有以下的特点:

1.每次切割之前,先要给定碎纸机一个目标数,而且在每张被送入碎纸机的纸片上也需要包含一个数。

2.碎纸机切出的每个纸片上都包括一个数。

3.要求切出的每个纸片上的数的和要不大于目标数而且与目标数最接近。

举一个例子,如下图,无极注册1960假设目标数是50,输入纸片上的数是12346。碎纸机会把纸片切成4块,分别包含1,2,34和6。这样这些数的和是43 (= 1 + 2 + 34 + 6),这是所有的分割方式中,不超过50,而又最接近50的分割方式。又比如,分割成1,23,4和6是不正确的,因为这样的总和是34 (= 1 + 23 + 4 + 6),比刚才得到的结果43小。分割成12,34和6也是不正确的,因为这时的总和是52 (= 12 + 34 + 6),超过了50。

还有三个特别的规则:

1.如果目标数和输入纸片上的数相同,那么纸片不进行切割。

2.如果不论怎样切割,无极客户端分割得到的纸片上数的和都大于目标数,那么打印机显示错误信息。

3.如果有多种不同的切割方式可以得到相同的最优结果。那么打印机显示拒绝服务信息。比如,如果目标数是15,输入纸片上的数是111,那么有两种不同的方式可以得到最优解,分别是切割成1和11或者切割成11和1,在这种情况下,打印机会显示拒绝服务信息。

为了设计这样的一个碎纸机,你需要先写一个简单的程序模拟这个打印机的工作。给定两个数,第一个是目标数,第二个是输入纸片上的数,你需要给出碎纸机对纸片的分割方式。 输入 输入包括多组数据,每一组包括一行。每行上包括两个正整数,分别表示目标数和输入纸片上的数。已知输入保证:两个数都不会以0开头,而且两个数至多都只包含6个数字。

文章标签:, ,