題目原文
題目網址
翻譯蒟蒻
- 題目給你兩個陣列 a 和 b 裡面包含一些數字
- 找出一個特定數字符合以下兩個條件
- 條件一,特定數字除上陣列 a 裡面的數字都要整除
- 條件二,陣列 b 裡面的所有數字除上特定數字都要整除
- 特定數字的區間剛好落在 a, b 陣列之間
- 算出符合這些條件的特定數字總共有幾個回傳
解題思路
//將 a 和 b 兩個陣列合併成一個新陣列
var newArr=a.concat(b);
//對新陣列內部進行排序
for(var i=0;i<newArr.length-1;i++){
var minIndex=i;
for(var i2=i+1;i2<newArr.length;i2++){
if(newArr[minIndex]>newArr[i2]){
minIndex=i2;
}
}
var tmp=0;
tmp=newArr[i];
newArr[i]=newArr[minIndex];
newArr[minIndex]=tmp;
}
var count=0;//找到符合條件的數字個數
for(var num=newArr[0];num<=newArr[newArr.length-1];num++){//特定數字區間介於新陣列最小數和最大數之間
var condition1=0;//條件一是否滿足
var condition2=0;//條件二是否滿足
for(var Arra=0;Arra<a.length;Arra++){
if(num%a[Arra]!=0){
condition1=0;
break;
}
else{
condition1=1;
}
}
if(condition1==1){
for(var Arrb=0;Arrb<b.length;Arrb++){
if(b[Arrb]%num!=0){
condition2=0;
break;
}
else{
condition2=1;
}
}
}
if(condition2==1){
count++;
}
}
return count
blog