De ce contează?
Înmulțești 123 cu 45 pe hârtie. Scrii 45 sub 123, apoi înmulțești fiecare cifră
a lui 45 cu tot numărul 123, aliniezi rezultatele parțiale deplasate cu o coloană
și le aduni. Calculatorul face exact același lucru — doar că ține cifrele într-un
vector, fiindcă numerele pot avea sute de cifre, mult peste ce încape în long long.
Intuiția
Gândește-te la cifre ca la monede de valori diferite: cifra de pe poziția i
valorează 10^i. Când înmulțești cifra de rang i din a cu cifra de rang j
din b, produsul lor valorează 10^i · 10^j = 10^(i+j). Deci el cade fix în
coloana i+j a rezultatului. Aduni acolo toate produsele care nimeresc aceeași
coloană, apoi „cari" surplusul peste 9 în coloana următoare — exact transportul
de la adunarea pe hârtie.