最近我在接受采访时被问到以下问题:通过python进行编程:
第一个数组的元素是所考虑的整数的所有因子 被考虑的整数是第二个数组的所有元素的因子 这些数字被称为在两个数组之间。您必须确定存在多少这样的数字。
输入格式
第一行包含两个空格分隔的整数,用于描述n的相应值,数组a中元素的数量,以及m,数组b中元素的数量。 第二行包含n个不同的空格分隔整数,描述a0,a1,... an-1。 第三行包含m个不同的空格分隔整数,描述b0,b1,... bn-1。
约束
- n,m在1,10
范围内- ai在1,100
范围内- bi在1,100
范围内输出格式
打印被认为介于a和b之间的整数数。
示例输入:
2 3 2 4 16 32 96
示例输出:
3
说明:
- 2和4均分为4,8,12和16.
- 4,8和16均分为16,32,96。
4,8和16是唯一的三个数字,A的每个元素都是一个因子,每个都是B的所有元素的因子。
这是我写的代码(我只需要完成函数' getTotalX'。剩下的代码已经存在):
Code. The function body getTotalX is what I wrote
然而,似乎,我的解决方案不正确但原因并没有告诉我。寻找帮助识别错误。
答案 0 :(得分:0)
根据你的问题,让我们介绍被视为'X'的整数。
首先找到列表b中项目的所有因子,然后找到常用值。输出(项目n)将为“X”的可能值。
然后找出这些可能值的因子。如果列表'a'中的项是可能值列表的因子值的子集,则将为最终列表选择可能的值(项n)。这些值是'X'值。我提供了我的代码为一个示例答案。
android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true