Znn3bq.jpeg
²é¿´: 1371  |  »Ø¸´: 8
±¾Ìû²úÉú 1 ¸ö ³ÌÐòÇ¿Ìû £¬µã»÷ÕâÀï½øÐв鿴
µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû

wangww2011

ľ³æ (ÖøÃûдÊÖ)

[½»Á÷] Project Euler 46 Å·À­¹¤³Ì 46 Ìâ ÒÑÓÐ4È˲ÎÓë

µÂ¹úÊýѧ¼ÒChristian GoldbachÔø¾­Ìá³öÒ»¸ö²ÂÏ룺
ÈκÎÒ»¸öÆæºÏÊý¶¼ÄÜд³ÉÒ»¸öËØÊýÓëÒ»¸öƽ·½ÊýµÄ¶þ±¶µÄºÍ£¬Èç
9 = 7 + 2*1^2
15 = 7 + 2*2^2
21 = 3 + 2*3^2
25 = 7 + 2*3^2
27 = 19 + 2*2^2
33 = 31 + 2*1^2
µ«ÊǺóÀ´Ö¤ÊµÕâ¸ö²ÂÏëÊÇ´íÎóµÄ¡£
ÄÇÃ´ÍÆ·­Õâ¸ö²ÂÏëµÄ×îСµÄÆæºÏÊýÊǶàÉÙ£¿
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

tieer

ľ³æ (ÕýʽдÊÖ)

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
xzhdty(½ð±Ò+2): »¶Ó­ÌÖÂÛ 2011-09-06 12:57:24
΢³¾¡¢ÃÎÏë(³ÌÐòÇ¿Ìû+1): ×·¼Ó~ 2011-09-07 11:58:31
ºÇºÇ£¬ÓÅ»¯Ò»Ï£¬¿ì¶àÁË,3.09s
CODE:
# -*- coding: cp936 -*-
#Å·À­¹¤³Ì 46 Ìâ
#ÈκÎÒ»¸öÆæºÏÊý¶¼ÄÜд³ÉÒ»¸öËØÊýÓëÒ»¸öƽ·½ÊýµÄ¶þ±¶µÄºÍ,ѰÕÒÆÆÀý
#n=prime+2*m**2
from math import sqrt
def isprime(p):    #ÑéÖ¤ÊÇ·ñËØÊý£¬ËØÊý·µ»Ø±¾Éí£¬ºÏÊý·µ»ØFalse
    k=1
    for i in xrange(2,int(sqrt(p))+1):
        if p%i==0:
            k=0
            return False
            break
    if k:
        return p
n=35
while True:
    killer=1                   #ÉèÖòÂÏëµÄÅжϲÎÊý
    if not isprime(n):         #ÑéÖ¤ÊÇ·ñËØÊý£¬ËØÊýÔònµÝÔö¼ÌÐøÏÂһѭ»·£¬ºÏÊý½øÐÐÏÂÒ»²½ÑéÖ¤
        for i in xrange(3,n-1):#×îСµÄËØÊýӦΪ3£¬ÈôΪ2£¬ÔòÎÞ·¨ÐÎ³ÉÆæºÏÊý
            if isprime(i) and (sqrt((n-i)/2))%1==0:#¸¡µãÊýÈ¡Ó࣬ºÇºÇ£¬»¹ÊÇpython·½±ã
                killer=0   #·ûºÏ²ÂÏë
                break
    else:
        n+=2
        continue
    if killer:                 #ÑéÖ¤Íê±Ï£¬²»·ûºÏ²ÂÏ룬¼´Îª½á¹û
        print('the number is:%d')%n
        break
    else:
        n+=2

˼¿¼£¬ÈÃÕâ¸öÊÀ½ç¸üÓÐȤ¡£
6Â¥2011-09-05 12:02:36
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
²é¿´È«²¿ 9 ¸ö»Ø´ð

tieer

ľ³æ (ÕýʽдÊÖ)

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
xzhdty: »¶Ó­ÌÖÂÛ 2011-09-05 07:10:30
΢³¾¡¢ÃÎÏë(½ð±Ò+2): 2011-09-07 11:57:14
³õѧpython£¬²ËÄñÓ×Öɰ棬ºÃÏñÔËÐÐÁË3,4·ÖÖÓ£¬ÆÚ´ý¸ßÊָĽø
´ð°¸£¬5777£¬²»ÖªµÀÊÇ·ñÕýÈ·£¬ºÇºÇ
CODE:
# -*- coding: cp936 -*-
#Å·À­¹¤³Ì 46 Ìâ
#ÈκÎÒ»¸öÆæºÏÊý¶¼ÄÜд³ÉÒ»¸öËØÊýÓëÒ»¸öƽ·½ÊýµÄ¶þ±¶µÄºÍ,ѰÕÒÆÆÀý
#n=prime+2*m**2
from math import sqrt
def isprime(p):    #ÑéÖ¤ÊÇ·ñËØÊý£¬ËØÊý·µ»Ø±¾Éí£¬ºÏÊý·µ»ØFalse
    k=1
    for i in xrange(2,int(sqrt(p))+1):
        if p%i==0:
            k=0
            return False
            break
    if k:
        return p
n=35
while True:
    killer=1                   #ÉèÖòÂÏëµÄÅжϲÎÊý
    if not isprime(n):         #ÑéÖ¤ÊÇ·ñËØÊý£¬ËØÊýÔònµÝÔö¼ÌÐøÏÂһѭ»·£¬ºÏÊý½øÐÐÏÂÒ»²½ÑéÖ¤
        for m in xrange(1,int(sqrt((n-2)/2)+1)):
            for i in xrange(1,n-1):
                if isprime(i) and n==i+2*m**2:
                    killer=0   #·ûºÏ²ÂÏë
                    break
            if not killer:     #·ûºÏ²ÂÏë
                break
    else:
        n+=2
        continue
    if killer:                 #ÑéÖ¤Íê±Ï£¬²»·ûºÏ²ÂÏ룬¼´Îª½á¹û
        print('the number is:%d')%n
        break
    else:
        n+=2

[ Last edited by tieer on 2011-9-5 at 00:01 ]
˼¿¼£¬ÈÃÕâ¸öÊÀ½ç¸üÓÐȤ¡£
2Â¥2011-09-04 23:56:16
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

asaka

Òø³æ (³õÈëÎÄ̳)

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+2): 2011-09-07 11:57:24
ÎÒµÄpython°æ±¾
CODE:
from math import sqrt
primes = []
n = 3
while True :
  isp = True
  for j in primes :
    if j**2 > n : break
    if n%j == 0 :
      isp = False
      break
  if isp :
    primes.append(n)
  else :
    isf = True
    for j in reversed(primes) :
      it = (n-j)/2
      if it == int(sqrt(it))**2 :
        isf = False
        break
    if isf : break
  n = n + 2
print "The number is",n

ÔËÐнá¹û
The number is 5777
real    0m0.038s

[ Last edited by asaka on 2011-9-5 at 04:37 ]
3Â¥2011-09-05 03:26:21
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

asaka

Òø³æ (³õÈëÎÄ̳)

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
xzhdty(½ð±Ò+2): »¶Ó­³£À´ 2011-09-05 07:10:04
Áí¸½£ºÑÛ»¨çÔÂÒÖ®---FORTRAN goto °æ
CODE:
      integer p(800)
      j=0;n=1
   1  n=n+2
      do 2 i=1,j
        if(p(i)**2.gt.n) goto 3
   2    if(mod(n,p(i)).eq.0) goto 4
   3  j=j+1
      p(j)=n;goto 1
   4  do 5 i=j,1,-1
        k=(n-p(i))/2
   5    if(k.eq.int(sqrt(float(k)))**2) goto 1
      write(6,*) "The number is ",n
      End

ÔËÐнá¹û£º
The number is         5777
real    0m0.003s
4Â¥2011-09-05 04:10:13
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 304Çóµ÷¼Á +7 castLight 2026-04-16 7/350 2026-04-17 20:05 by ¹ØÒ»ÕµµÆcd
[¿¼ÑÐ] ½ÓÊÜÈκε÷¼Á +4 Ò²¾ÍÊÇÀõ×Ó 2026-04-17 4/200 2026-04-17 17:57 by Equinoxhua
[¿¼ÑÐ] 322Çóµ÷¼Á +6 tekuzu 2026-04-17 6/300 2026-04-17 13:48 by Espannnnnol
[ÂÛÎÄͶ¸å] ÓÐûÓнÓÊձȽϿìµÄsciÆÚ¿¯Ñ½£¬×îºÃÔÚÒ»¸öÔÂÖ®Äڵģ¬ÑÐÈýº¢×ÓÇó±ÏÒµ 20+4 Ö®»¤×Å 2026-04-16 5/250 2026-04-17 10:02 by bobvan
[¿¼ÑÐ] 291Çóµ÷¼Á +9 ¹ØÒä±±. 2026-04-14 9/450 2026-04-16 22:49 by cfdbai
[¿¼ÑÐ] 300Çóµ÷¼Á +11 ³Èa777 2026-04-15 11/550 2026-04-16 22:43 by cfdbai
[¿¼ÑÐ] 22408 312Çóµ÷¼Á +23 ÃÅ·ÃþÃþ 2026-04-14 25/1250 2026-04-16 21:21 by Art1977
[¿¼ÑÐ] ҩѧÇóµ÷¼Á +14 à¶¹þ¼ÓÓÍ 2026-04-14 16/800 2026-04-16 10:15 by beilsong20
[¿¼ÑÐ] 290µ÷¼ÁÉúÎï0860 +38 ÍÛ¹þ¹þ£¬¡£ 2026-04-11 44/2200 2026-04-16 09:52 by cuisz
[¿¼ÑÐ] ҩѧÇóµ÷¼Á +11 RussHu 2026-04-12 13/650 2026-04-15 19:07 by zhuwenxu
[¿¼ÑÐ] 0854µ÷¼Á +13 ³¤¹­°Á 2026-04-12 16/800 2026-04-15 13:45 by fenglj492
[¿¼ÑÐ] ¸÷λÀÏʦºÃ£¬Çóµ÷¼Á£¬±¾¿Æ211£¬Ò»Ö¾Ô¸Ìì½ò´óѧÉúÎïÓëҽҩѧ˶£¬²îÁ½Ãû¼ȡ¡£ +11 ·ÁùÁùjjj 2026-04-13 11/550 2026-04-14 16:01 by zs92450
[¿¼ÑÐ] 271Çóµ÷¼Á +35 2261744733 2026-04-11 41/2050 2026-04-14 15:36 by zs92450
[¿¼ÑÐ] ¿¼ÑÐÇóµ÷¼Á +6 ban°àСÆß 2026-04-11 6/300 2026-04-14 14:06 by ¶ßÀ²AÃÎÖ»ÊǸöÃÎ
[¿¼ÑÐ] ʳƷÓëÓªÑø£¨0955£©271Çóµ÷¼Á +15 Éý¸ñ°¢´ï 2026-04-12 16/800 2026-04-14 13:18 by ¸¡Èô_°²Éú
[¿¼ÑÐ] 245Çóµ÷¼Á +6 ±ùÌÇéÙ?ÆûË® 2026-04-13 10/500 2026-04-14 10:49 by jyl0317
[¿¼ÑÐ] 293Çóµ÷¼Á +16 ÎÒ°®¸ßÊý¸ßÊý°®Î 2026-04-12 18/900 2026-04-13 21:47 by ѧԱJpLReM
[¿¼ÑÐ] 297¹¤¿Æ£¬Çóµ÷¼Á? +13 ºÓÄÏũҵ´óѧ-ÄÜ 2026-04-12 13/650 2026-04-13 14:12 by dingyanbo1
[¿¼ÑÐ] Ò»Ö¾Ô¸Õã´óÉúÎï325·ÖÇóµ÷¼Á +9 zysheng 2026-04-12 9/450 2026-04-12 22:31 by yuyin1233
[¿¼ÑÐ] 339Çóµ÷¼Á +8 hanwudada 2026-04-11 9/450 2026-04-12 15:36 by laoshidan
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û