数学吧 关注:885,571贴子:8,727,868
  • 12回复贴,共1

几道国外竞赛题求解

只看楼主收藏回复

希望有大佬关注解答如果有过程就最好了,提前感谢
1. 2021以下有多少个数是有且仅有两个质数的积?例如6,28等
2. 4*4的magic square(类似4*4的矩阵,行列和两个对角线之和相等),每个数取值范围皆为-9到9,可重复。共有多少种可能性。


IP属地:加拿大1楼2021-04-08 14:41回复
    第一题有试过画图估算,结果精度太低
    第二题现在发现四个角的和与中心四个数之和等于行列的和,故初步判断共有8^19种square,但其中有相当不少不满足大于-9小于9的条件


    IP属地:加拿大2楼2021-04-08 15:03
    回复


      IP属地:加拿大来自iPhone客户端3楼2021-04-09 03:11
      收起回复
        没人吗


        IP属地:加拿大来自iPhone客户端4楼2021-04-09 03:11
        回复
          第一题除了穷举还能怎样?


          5楼2021-04-10 01:13
          收起回复
            一百以内还算管用,但数字越大精度越差


            IP属地:加拿大来自iPhone客户端6楼2021-04-10 03:53
            回复
              突然发现我们直接有了代购


              IP属地:上海来自Android客户端7楼2023-04-02 19:22
              收起回复
                2021以下有多少个数是有且仅有两个质数的积,可以通过枚举法来解决。
                先列出2021以下的所有质数,它们是2、3、5、7、11、13……1993、1997、1999、2003、2009、2011、2017、2027。
                然后对于每一个小于2021的正整数n,可以枚举其所有可能的质数组合,判断它们的乘积是否等于n。如果等于,统计答案即可。
                具体的代码实现如下(使用Python语言):
                复制# 判断一个数是否是质数def is_prime(n): if n < 2: return False for i in range(2, int(n ** 0.5) + 1): if n % i == 0: return False return True# 判断一个数是否是有且仅有两个质因子的积def is_two_primes_product(n): count = 0 for i in range(2, n): if n % i == 0 and is_prime(i): count += 1 return count == 2# 统计有且仅有两个质因子的积的个数count = 0for i in range(2, 2021): if is_two_primes_product(i): count += 1print(count)
                运行得到的结果是60,即2021以下有60个数是有且仅有两个质数的积。


                IP属地:安徽8楼2023-04-02 19:46
                回复