título Descripción
la multiplicación de Rusia, también conocido como el método de campesino ruso, es el algoritmo no convencionales para la multiplicación de dos números enteros positivos. m Supongamos y n son dos números enteros positivos, tenemos que calcular el producto de los mismos. Su principio principal es la siguiente: si n es un número par n- m = n- / 2 2M * el n- más m = (n- 1.) / 2 + M El algoritmo comprende solamente binario, duplicando, adición, y la operación simple varios, logrando así la velocidad muy rápido. DETALLADA calculado como se muestra a continuación:
entrada
Dos números enteros positivos n, m.
exportación
el producto de n y m. Resumiendo la salida de toda la expresión entre los operadores con números separados por un espacio.
de entrada de muestra Copia
50 65
Ejemplo de salida
130 + 1040 + 2080 = 3250
Análisis de las muestras:
50 65
25 130 de la izquierda es un número impar de
12 es 260.
. 6 520.
. 3 1040 dejó un número impar de
12.080 a la izquierda es un número impar
de número impar izquierda a la derecha el número de todos juntos: 130+ 1040 + 2080 = 3250
#include <iostream> el uso de espacio de nombres std; int main () { int n, m; cin >> n >> m; int temp [ 1005 ]; int k = 0 ; mientras que (n =! 0 ) { si (n% 2 == 1 ) { temp [k] = m; k ++ ; } N / = 2 ; m * = 2 ; } intsuma = 0 ; para ( int i = 0 ; i <k; i ++ ) { suma + = temp [i]; cout << temp [i]; si (i == k- 1 ) cout << " " << " = " << " " << suma << endl; otro tribunal << " " << " + " << " " ; } Volver 0 ;