Số ở giữa (Between Two Sets)
Bạn được cho 2 mảng các số nguyên xác định tất cả các số nguyên thỏa mãn 2 điều kiện sau:
1. các phần tử của mảng đầu tiên điều là các hệ số của số đang xét
2. số đang xét là hệ số của tất cả phần tử màng số 2
Những con số này được gọi là nằm giữa hai mảng. bạn hãy xác định có bao nhiêu số tồn tại.
cho ví dụ cho 2 số cho mảng a = [2, 6] và mảng b = [24, 36] do đó có 2 số nằm giữa là 6 và 12. 6%2 = 0 6%6 = 0 24%6 = 0 và 36%6 = 0 cho giá trị đầu tiên. tương tự 12%2 0 và 12 % 6 = 0 và 24 % 12 = 0 và 36%12 = 0
Miêu tả chức năng
Hoàn thành getTotalX được cho như bên dưới. Nó sẽ trả về con số giữa 2 bộ này
getTotalX có các giá trị parameter sau
a: giá trị mảng các số nguyên
b: giá trị mảng các số nguyên
giá trị đầu vào
Hoàn thành getTotalX được cho như bên dưới. hãy trả về các con số giữa 2 bộ. getTotalX có các parameter sau
a: 1 mảng các số nguyên
b: 1 mảng các số nguyên
giá trị đầu vào
dòng đầu tiên các số riêng biệt m và n. số các phần tử của mảng a và mảng b.
dòng thứ 2 chứa n số nguyên riêng biệt biêu diễn a[i] với 0<= i <n
dòng thứ 3 chứa m số nguyên riêng biệt biêu diễn b[j] với 0<= j <m
ràng buộc
1<= n,m <= 10
1<= a[i] <= 100
1<= b[j] < = 100
giá trị đầu ra
In ra các số đươc chọn ở giữa a và b
ví dụ đầu vào
2 3
2 4
16 32 96
ví dụ đầu ra
3
giải thích
2 và 4 được chia bởi các số 4 , 8, 12 và 16
4 , 8 và 16 được chia hết cho 16 , 32 và 96
4, 8 và 16 chỉ là 3 số với mỗi phần tử a là hệ số và là hệ số của tất cả phần tử b
php
1. các phần tử của mảng đầu tiên điều là các hệ số của số đang xét
2. số đang xét là hệ số của tất cả phần tử màng số 2
Những con số này được gọi là nằm giữa hai mảng. bạn hãy xác định có bao nhiêu số tồn tại.
cho ví dụ cho 2 số cho mảng a = [2, 6] và mảng b = [24, 36] do đó có 2 số nằm giữa là 6 và 12. 6%2 = 0 6%6 = 0 24%6 = 0 và 36%6 = 0 cho giá trị đầu tiên. tương tự 12%2 0 và 12 % 6 = 0 và 24 % 12 = 0 và 36%12 = 0
Miêu tả chức năng
Hoàn thành getTotalX được cho như bên dưới. Nó sẽ trả về con số giữa 2 bộ này
getTotalX có các giá trị parameter sau
a: giá trị mảng các số nguyên
b: giá trị mảng các số nguyên
giá trị đầu vào
Hoàn thành getTotalX được cho như bên dưới. hãy trả về các con số giữa 2 bộ. getTotalX có các parameter sau
a: 1 mảng các số nguyên
b: 1 mảng các số nguyên
giá trị đầu vào
dòng đầu tiên các số riêng biệt m và n. số các phần tử của mảng a và mảng b.
dòng thứ 2 chứa n số nguyên riêng biệt biêu diễn a[i] với 0<= i <n
dòng thứ 3 chứa m số nguyên riêng biệt biêu diễn b[j] với 0<= j <m
ràng buộc
1<= n,m <= 10
1<= a[i] <= 100
1<= b[j] < = 100
giá trị đầu ra
In ra các số đươc chọn ở giữa a và b
ví dụ đầu vào
2 3
2 4
16 32 96
ví dụ đầu ra
3
giải thích
2 và 4 được chia bởi các số 4 , 8, 12 và 16
4 , 8 và 16 được chia hết cho 16 , 32 và 96
4, 8 và 16 chỉ là 3 số với mỗi phần tử a là hệ số và là hệ số của tất cả phần tử b
php
<?php
/*
* Complete the 'getTotalX' function below.
*
* The function is expected to return an INTEGER.
* The function accepts following parameters:
* 1. INTEGER_ARRAY a
* 2. INTEGER_ARRAY b
*/
function lcmAr($arr) {
$lcm_val = $arr[0];
foreach($arr as $val) {
$lcm = gmp_lcm($lcm_val, $val);
$lcm_val = gmp_strval($lcm);
}
return $lcm_val;
}
function gcdAr($arr) {
$gcd_val = $arr[0];
foreach($arr as $val) {
$gcd = gmp_gcd($gcd_val, $val);
$gcd_val = gmp_strval($gcd);
}
return $gcd_val;
}
function getTotalX($a, $b) {
$lcmAr = lcmAr($a);
$gcdAr = gcdAr($b);
$cond = true;
$index = 0;
$counter = 0;
while($cond) {
$index++;
if($lcmAr > $gcdAr) {
$cond = false;
} else if($index * $lcmAr > $gcdAr ) {
$cond = false;
} else
{
$a =$index * $lcmAr;
if( $gcdAr % $a == 0 ) {
$counter++;
}
}
}
return $counter;
}
$fptr = fopen(getenv("OUTPUT_PATH"), "w");
$first_multiple_input
= explode(' ', rtrim(fgets(STDIN)));
= explode(' ', rtrim(fgets(STDIN)));
$n = intval($first_multiple_input[0]);
$m = intval($first_multiple_input[1]);
$arr_temp = rtrim(fgets(STDIN));
$arr = array_map('intval',
preg_split('/ /', $arr_temp, -1,
PREG_SPLIT_NO_EMPTY));
preg_split('/ /', $arr_temp, -1,
PREG_SPLIT_NO_EMPTY));
$brr_temp = rtrim(fgets(STDIN));
$brr = array_map('intval',
preg_split('/ /', $brr_temp, -1,
PREG_SPLIT_NO_EMPTY));
preg_split('/ /', $brr_temp, -1,
PREG_SPLIT_NO_EMPTY));
$total = getTotalX($arr, $brr);
fwrite($fptr, $total . "\n");
fclose($fptr);
Comments
Post a Comment