bzoj#P1403. Divisibility Testing! Wow!
Divisibility Testing! Wow!
题目描述
通常有方法检查(除了暴力除法)一个数是否可以被另一个数整除,例如: a) 在十进制数字系统中,如果最右边的数字可以被2整除,那么一个数字就可以被2除尽。 42,38,50 可被2整除。 b) 在十进制数字系统中,如果一个数字由最右边的两个数字组成,那么这个数字可以被4整除。 数字可以被4整除。所以 100,124,1328 可以被4除尽。 c) 在十进制数字系统中,如果一个数字的位数之和可以被3整除,那么这个数字可以被3除。所以 123 可被3整除为 (1+2+3=6=3∗2) 。对于9的可除性也有类似的测试:测试99时,我们需要将右边的所有数字相加,将两个数字作为一个数字。对于示例 237431035137933 可被99整除为 33+79+03+51+03+31+74+23 = 297 = 99∗3 。 d) 如果一个数字的奇数位和偶数位之和的差可以被11整除,右边的定位数字可以被11整除。例如1270401可以被11除,如下所示 (1−0+4−0+7−2+1)=11 ,可被11整除。 e) 一个数可以被7整除,如果所形成的数的总和之差 右边的三位数可以被7整除。例如1668266767874可以被整除,因为 (874−767+266−668+001) = −294 = −42∗7 。 在这个问题中,您必须自动发现 不同的数字系统 (2<Base<500) 和不同的数字 (小于5000) 作为除数。如果将最多 1000 个最右边的数字作为数字或考虑到多达 1000 个交替数字的总和,只需打印“未找到条件”行。 如果找到条件,则应根据以下示例输出格式化输出。 当发现多种类型的条件时,请按照上面指定的顺序打印它们(首先尝试考虑最左边的数字,然后添加所有数字,然后再添加备用数字方案)。 打印该条件并处理下一个输入。样本输出将使一切变得清晰。
输入格式
每个测试点包含100组数据,两组数据之间换行不空行。 在每组数据中,仅一行,两个数B, N(2<=B<=500,2<=N<=1000)。 两个数都以10进制给出。
输出格式
input1
output1
提示
没有写明提示。
题目来源
没有写明来源。