Consider the following pseudocode. The `floor(n)` function returns the largest integer value smaller than or equal to `n`. The `remainder(x, j)` function returns the remainder when `x` is divided by `j`. What will the value of `B` be at the end of execution?
```
A = [18, 19, 24, 21, 13]
B = []
foreach number in A {
if (checkCondition(number)) {
B = B ++ [number]
}
}
Procedure checkCondition(X)
sum_of_digits = 0
temp = X
while (temp > 0) {
digit = remainder(temp, 10)
sum_of_digits = sum_of_digits + digit
temp = floor(temp / 10)
}
if (remainder(X, sum_of_digits) == 0) {
return(True)
}
else {
return(False)
}
End checkCondition
```