Python 幂挑战| 竞争编码问题

题:

幂函数是可以表示为x ^ x的正数,即x升为x的幂,其中x是任何正数。 您将得到一个整数数组A,并且如果数组A的元素是否为Power Number,则需要打印。

输入:

第一行包含N,一个正整数。下一行包含N个空格-分隔的整数。


    3

    1 3 4


输出:

对于每个整数,如果是幂数,则打印“ Yes”,否则打印“ No”。这些输出必须用空格分隔。


    Yes  No  Yes


限制条件:


    1 <= N  <= 100

    1 <= A[i] <= 10^16


说明/解决方案:

在这个问题中,我们必须检查数组中给定的数字是否为幂数。我们将在python中的幂函数的帮助下找到它。因此,我们可以通过将每个元素与幂数进行比较来做到这一点,因此首先我们从用户那里获取输入并创建大小为N的数组。然后制作另一个存储从1到14的幂数的数组。这个问题的重点是约束。在这个问题中,给出的约束直到10 ^ 16个数字。

为了解决这个问题,我们使用Python3。

码:


# 输入N

N = int(input())

# 输入N array elements

Arr = list(map(int, input().split()))

# 创建另一个空白/空数组

Brr = []

for i in range(15):

    # 在空白数组中附加电源编号

    Brr.append(pow(i, i))

for i in range(N):

    # 比较给定数组与 

    # 幂数数组一对一

    if(Arr[i]  in  Brr):

        # 如果匹配,则打印是其他方式否

        print('Yes', end=' ')  

    else:

        print('No', end=' ')


输出结果


RUN 1:

5

1 4 3 16 256

Yes Yes No No Yes

RUN 2:

5

2 4 8 16 32

No Yes No No No


以上是 Python 幂挑战| 竞争编码问题 的全部内容, 来源链接: utcz.com/z/348738.html

回到顶部