Dados dos números grandes o pequeños, la tarea es encontrar el último dígito del producto de estos dos números.
Ejemplos:
Input: a = 1234567891233789, b = 567891233156156 Output: 4 Input: a = 123, b = 456 Output: 8
Método: En general, el último dígito de la multiplicación de 2 números a y b es el último dígito del producto del LSB de estos dos números.
Por ejemplo: Para a = 123 y b = 456,
el último dígito de a*b
= Último dígito de ((LSB de a)*(LSB de b))
= Último dígito de ((3)*(6))
= Último dígito de (18)
= 8
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation of the above approach #include <bits/stdc++.h> using namespace std; // Function to print last digit of product a * b void lastDigit(string a, string b) { int lastDig = (a[a.length() - 1] - '0') * (b[b.length() - 1] - '0'); cout << lastDig % 10; } // Driver code int main() { string a = "1234567891233", b = "1234567891233156"; lastDigit(a, b); return 0; }
Java
// Java implementation of the above approach class Solution { // Function to print last digit of product a * b public static void lastDigit(String a, String b) { int lastDig = (a.charAt(a.length() - 1) - '0') * (b.charAt(b.length() - 1) - '0'); System.out.println(lastDig % 10); } // Driver code public static void main(String[] args) { String a = "1234567891233", b = "1234567891233156"; lastDigit(a, b); } }
Python3
# Python3 implementation of the above approach # Function to print the last digit # of product a * b def lastDigit(a, b): lastDig = ((int(a[len(a) - 1]) - int('0')) * (int(b[len(b) - 1]) - int('0'))) print(lastDig % 10) # Driver code if __name__ == '__main__': a, b = "1234567891233", "1234567891233156" lastDigit(a, b) # This code has been contributed # by 29AjayKumar
C#
// CSharp implementation of the above approach using System; class Solution { // Function to print last digit of product a * b public static void lastDigit(String a, String b) { int lastDig = (a[a.Length - 1] - '0') * (b[b.Length - 1] - '0'); Console.Write(lastDig % 10); } // Driver code public static void Main() { String a = "1234567891233", b = "1234567891233156"; lastDigit(a, b); } }
PHP
<?php // PHP implementation of the above approach // Function to print last digit of product a * b function lastDigit($a, $b) { $lastDig = (ord($a[strlen($a) - 1]) - 48) * (ord($b[strlen($b) - 1]) - 48); echo $lastDig % 10; } // Driver code $a = "1234567891233"; $b = "1234567891233156"; lastDigit($a, $b); // This code is contributed by ihritik ?>
Javascript
<script> // Javascript implementation of the above approach // Function to print last digit of product a * b function lastDigit(a, b) { var lastDig = (a[a.length - 1] - '0') * (b[b.length - 1] - '0'); document.write(lastDig % 10); } // Driver code var a = "1234567891233", b = "1234567891233156"; lastDigit(a, b); // This code is contributed by rrrtnx. </script>
Producción:
8
Complejidad Temporal: O(1).
Espacio Auxiliar: O(1)