Znn3bq.jpeg
²é¿´: 1349  |  »Ø¸´: 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: »¶Ó­ÌÖÂÛ 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µÄ»ØÌû

asaka

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

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
xzhdty: »¶Ó­ÌÖÂÛ 2011-09-05 07:09:50
ÎÒÄÜËã³öÀ´µÚÒ»¸öÊÇ5777£¬µÚ¶þ¸öÊÇ5993£¬²»ÖªµÀµÚÈý¸öÊǶàÉÙ£¿
5Â¥2011-09-05 05:41:39
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢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µÄ»ØÌû

wangww2011

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

¡ï ¡ï
ben_ladeng: 2011-09-05 20:57:16
xzhdty(½ð±Ò+2): »¶Ó­³£À´ÌÖÂÛ 2011-09-06 12:57:05
ÁíÍâÒ»ÖÖ˼·£¬
CODE:
from math import sqrt
n=10000
primes=[2,3]
oddcomp=[]
for i in range(5,n,2):
    isprime=True
    for j in primes:
        if j*j>=i: break
        if i%j==0:
            isprime=False
            break
    if isprime:
        primes.append(i)
    else:
        oddcomp.append(i)
   
res=[p+2*j*j for p in primes for j in range(1,int(sqrt(n))+1)]
print set(oddcomp)-(set(res)|set(primes))

½á¹ûΪ
CODE:
set([5777, 5993])

PS ²»»áÖ»ÓÐÕâÁ½¸öÊý°É£¿

[ Last edited by wangww2011 on 2011-9-5 at 12:36 ]
7Â¥2011-09-05 12:28:26
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sudo

ľ³æ (ÕýʽдÊÖ)

¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+1): ¹ÄÀøÌÖÂÛ~ 2011-09-07 11:59:05
ÎÒÓÖ¿´µ½ÁËÒ»¸öͦÀ§ÄѵÄÊýÂÛËã·¨ÎÊÌ⣺

¡°ÈçºÎ¿ìËÙÅжÏÒ»¸öÕûÊýÊÇ·ñΪÍêȫƽ·½Êý¡±

ÕâÓ¦¸ÃÊDZ¾Ìâ×»ªµÄµØ·½...
8Â¥2011-09-05 15:10:50
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

huycwork

½ð³æ (ÖøÃûдÊÖ)

¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+1): ¹ÄÀøÌÖÂÛ~ 2011-09-07 11:59:24
ÒýÓûØÌû:
8Â¥: Originally posted by sudo at 2011-09-05 15:10:50:
ÎÒÓÖ¿´µ½ÁËÒ»¸öͦÀ§ÄѵÄÊýÂÛËã·¨ÎÊÌ⣺

¡°ÈçºÎ¿ìËÙÅжÏÒ»¸öÕûÊýÊÇ·ñΪÍêȫƽ·½Êý¡±

ÕâÓ¦¸ÃÊDZ¾Ìâ×»ªµÄµØ·½...

ÒªÕâôŪ¾ÍÂé·³Äñ~~~~
ÄÇËØÊýÒ²ÒªÓøöÄÇɶËã·¨£¬½Ð·ÑÂíС¶¨ÀíµÄÅжÏÒ»ÏÂÁË~
äöÎеÄÖÐÐÄÓÐÒ»¿é¿ÕµØ£¬¿Õ¿ÕµÄ¡£
9Â¥2011-09-05 15:30:59
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ wangww2011 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤300Çóµ÷¼Á +35 Ф¿ªÎÄ 2026-04-09 38/1900 2026-04-10 22:59 by Ftglcn90
[¿¼ÑÐ] 342µç×ÓÐÅϢר˶Çóµ÷¼Á +8 ÄãÈÃÎÒÔõôÀóÖ¦ 2026-04-10 9/450 2026-04-10 21:46 by fxue1114
[¿¼ÑÐ] Çóµ÷¼Á +7 Á§ÜÔÒ»¶¨Éϰ¶ 2026-04-10 7/350 2026-04-10 15:25 by jiajinhpu
[¿¼ÑÐ] Çóµ÷¼Á +11 ôæôæÒ»ÊéÉú 2026-04-09 13/650 2026-04-10 10:27 by liuhuiying09
[¿¼ÑÐ] ²ÄÁϹ¤³Ì302·ÖÇóµ÷¼Á +18 zyxÉϰ¶£¡ 2026-04-04 18/900 2026-04-10 10:07 by 314126402
[¿¼ÑÐ] ¿¼ÑжþÂÖµ÷¼Á +8 ¹ÊÈË?? 2026-04-09 8/400 2026-04-10 09:44 by Çà÷duoduo
[¿¼²©] ²©Ê¿×Ô¼ö +7 ¿É¿ÉСÅÖ 2026-04-08 7/350 2026-04-10 08:28 by kimhero
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤371Çóµ÷¼Á +17 ÅãÁÕ¿´º£ 2026-04-04 18/900 2026-04-10 07:51 by 314126402
[¿¼ÑÐ] 266Çóµ÷¼Á£¬Ò»Ö¾Ô¸¹þ¹¤³Ìµç×ÓÐÅÏ¢£¬±¾¿Æ»ñ¶àÏî¹ú½±ºÍÊ¡½± +4 lumine1 2026-04-06 4/200 2026-04-09 17:38 by vgtyfty
[¿¼ÑÐ] ¸´ÊÔµ÷¼Á£¬Ò»Ö¾Ô¸Ö£ÖÝ´óѧ²ÄÁÏÓ뻯¹¤289·Ö +31 ˶ÐǸ° 2026-04-08 31/1550 2026-04-09 16:54 by Delta2012
[¿¼ÑÐ] µ÷¼Á +12 ÔÂ@163.com 2026-04-08 12/600 2026-04-09 14:27 by rl1980
[¿¼ÑÐ] 0703µ÷¼Á£¬Ò»Ö¾Ô¸Ìì½ò´óѧ319·Ö +23 haaaabcd 2026-04-05 26/1300 2026-04-08 16:19 by luoyongfeng
[¿¼ÑÐ] Çóµ÷¼Á +9 ÔÂ@163.com 2026-04-07 11/550 2026-04-08 14:48 by qlm5820
[¿¼ÑÐ] 304Çóµ÷¼Á +16 c297914 2026-04-05 17/850 2026-04-08 13:00 by grayjzr
[¿¼ÑÐ] 277Çóµ÷¼Á ÊýÒ»104·Ö +9 Æ¿×ÓPZ 2026-04-05 14/700 2026-04-07 17:52 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 297·Ö083200ÇóÖú +9 aekx 2026-04-05 9/450 2026-04-06 20:57 by flysky1234
[¿¼ÑÐ] Ò»Ö¾Ô¸ºÓ±±¹¤Òµ´óѧ²ÄÁϹ¤³Ì£¬³õÊÔ344Çóר˶µ÷¼Á +6 15933906766 2026-04-05 6/300 2026-04-06 13:21 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] ¿¼Ñе÷¼ÁÉúѰÕÒµ¼Ê¦ +3 ¹ËÕ°¿¼Ñа¡ 2026-04-05 3/150 2026-04-05 18:18 by à£à£à£0119
[¿¼ÑÐ] 08ר˶275µ÷¼Á +5 AaAa7420 2026-04-05 5/250 2026-04-05 18:01 by jkddd
[¿¼ÑÐ] Çóµ÷¼Á +3 ũҵ¹¤³ÌÓëÐÅÏ¢¼ 2026-04-04 3/150 2026-04-04 12:19 by Éá¶øºóµÃ
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û