Ohh.
So let's look at your example, 20x386. 20 is 2x10, right? So instead of multiplying by 20 directly, we can multiply by 10 and then multiply by 2, and it will give the same answer.
Multiplying by 10 is where we tack the 0 on to the end. But why does this work? To understand this, you really need to understand place value. What is 386? 386 is 300 + 80 + 6 -- or 3 hundreds, 8 tens, and 6 ones. When we multiply by 10, it turns the hundreds into thousands, the tens into hundreds, and the ones into tens. Then we have 3 thousands, 8 hundreds, and 6 tens, or 3000 + 800 + 60, which is written as 3860.
Now we've multiplied by 10, but we were *trying* to multiply by 20. Since 20 is 10x2, we just have to multiply by 2 to get the final answer.
I'm surprised by teaching this *after* the standard algorithm. In my mind, this is essential to understanding the standard algorithm.
Here's a khan academy video about multiplying by multiples of 10.
https://www.khanacademy.org/math/arithmetic/multiplication-division/multi_digit_multiplication/v/multiplying-by-multiples-of-10