📜  7的幂的最后两位数

📅  最后修改于: 2021-10-25 08:12:37             🧑  作者: Mango

给定一个正N ,任务是找到7 N的最后两位数字。
例子:

方法:找到X Y的最后K位数字的一般方法是以对数时间复杂度讨论本文。在本文中,我们将讨论恒定时间解决方案。
下面是用于7 N对于N的一些值的值的观察:

基于以上观察,我们有以下案例:

  1. 如果 N = 4K + 3 时 7 中的最后两位N = 07。
  2. 如果 N = 4K + 2 时,7 中的最后两位数N = 49。
  3. 如果 N = 4K + 1 时 7 中的最后两位N = 43。
  4. 如果 N = 4K 时 7 的最后两位数N = 01。

下面是上述方法的实现:

C++
// C++ program for the above approach
 
#include 
using namespace std;
 
// Function to find the last
// two digits of 7^N
string get_last_two_digit(int N)
{
    // Case 4
    if (N % 4 == 0)
        return "01";
 
    // Case 3
    else if (N % 4 == 1)
        return "07";
 
    // Case 2
    else if (N % 4 == 2)
        return "49";
 
    // Case 1
    return "43";
}
 
// Driver Code
int main()
{
    // Given Number
    int N = 12;
 
    // Function Call
    cout << get_last_two_digit(N);
    return 0;
}


Java
// Java program for the above approach
import java.io.*;
import java.util.*;
 
class GFG{
 
// Function to find the last
// two digits of 7^N
public static String get_last_two_digit(int N)
{
    // Case 4
    if (N % 4 == 0)
        return "01";
 
    // Case 3
    else if (N % 4 == 1)
        return "07";
 
    // Case 2
    else if (N % 4 == 2)
        return "49";
 
    // Case 1
    return "43";
}
 
// Driver code
public static void main(String[] args)
{
    int N = 12;
 
    // Function Call
    System.out.println(get_last_two_digit(N));
}
}
 
// This code is contributed by grand_master


Python3
# Python3 program for the above approach
 
# Function to find the last
# two digits of 7 ^ N
def get_last_two_digit(N):
 
    # Case 4
    if (N % 4 == 0):
        return "01";
 
    # Case 3
    elif (N % 4 == 1):
        return "07";
 
    # Case 2
    elif (N % 4 == 2):
        return "49";
 
    # Case 1
    return "43";
     
# Driver Code
 
# Given number
N = 12;
 
# Function call
print( get_last_two_digit(N))
 
# This code is contributed by grand_master


C#
// C# program for the above approach
using System;
 
namespace GFG{
class GFG{
     
// Function to find the last
// two digits of 7^N
public static String get_last_two_digit(int N)
{
    // Case 4
    if (N % 4 == 0)
        return "01";
 
    // Case 3
    else if (N % 4 == 1)
        return "07";
 
    // Case 2
    else if (N % 4 == 2)
        return "49";
 
    // Case 1
    return "43";
}
 
// Driver code
public static void Main()
{
     
    // Given number
    int N = 12;
 
    // Function Call
    Console.Write(get_last_two_digit(N));
}
}
}
 
// This code is contributed by grand_master


Javascript


输出:
01

时间复杂度: O(1)
辅助空间: O(1)