±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 1953  |  »Ø¸´: 19

holmescn

½ð³æ (ÕýʽдÊÖ)

[½»Á÷] Euler ¹¤³Ì µÚØ¥ËÄÌ⣺ȫÅÅÁеĵÚ100ÍòÏî ÒÑÓÐ5È˲ÎÓë

Ò»¸öÅÅÁÐÊÇÒ»×é¶ÔÏóµÄÒ»¸öÓÐÐòÅÅÁС£±ÈÈç3123ÊÇÊý×Ö1¡¢2¡¢3ºÍ4µÄÒ»¸ö¿ÉÄܵÄÅÅÁС£Èç¹û°ÑËùÓеÄÅÅÁа´ÕÕÆäÊý×Öor×ÖĸµÄ´óС˳Ðò¶¼ÁгöÀ´£¬ÄǾͳÉΪһ¸öÈ«ÅÅÁС£±ÈÈç0¡¢1¡¢2µÄÈ«ÅÅÁÐÊÇ£º
012 021 102 120 201 210

ÄÇô£¬Êý×Ö0¡¢1¡¢2¡¢3¡¢4¡¢5¡¢6¡¢7¡¢8ºÍ9µÄÈ«ÅÅÁеĵÚ100ÍòÏîÊǶàÉÙ£¿
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

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

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

huycwork

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

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+5): ¹ÄÀø½»Á÷~~ 2011-06-10 21:51:26
C++ÂùÁ¦°æ´úÂ룺
CODE:
#include
#include
#include
using namespace std;

bool next_digit(char *first, char *last, char *end){
        char *left, *right;
        if(last-first<2){
                return false;
        }
        for(right = last; right > first; --right){
                for(left = right-1; left >= first; --left){
                        if(*left < *right){
                                if(!next_digit(left+1, right, end)){
                                        swap(*left, *right);
                                        sort(left+1, end);
                                        return true;
                                }else
                                        return true;
                        }
                }
        }
        return false;
}

string eular24(const string &str){
        char *base = const_cast(str.c_str());
        for(size_t i = 1; i < 1000000; ++i)
                next_digit(base, base+str.length()-1, base+str.length());
        return str;
}

int main(){
        cout<         return 0;
}

äöÎеÄÖÐÐÄÓÐÒ»¿é¿ÕµØ£¬¿Õ¿ÕµÄ¡£
2Â¥2011-06-10 11:45:00
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

huycwork

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

¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+3): лл·ÖÏí~~ 2011-06-10 21:51:54
·ÇÂùÁ¦°æÒ²ÓУ¬²»¹ý²»ÊÇ×Ô¼ºÏë³öÀ´µÄ£¬¾Í²»ºÃÒâ˼ֱ½ÓÌù´úÂëÁË£¬»ù±¾Ïë·¨¾ÍÊÇÊýÖÆµÄÀ©Õ¹£º
¶þ½øÖÆÊýÖÆÊÇÕâ¸öÑù×Ó£º
a1*2^n+a2*2^(n-1)+...+an*2^1+a*2^0
Ê®½øÖÆÊýÖÆÊÇÕâÑù×Ó£º
b1*10^n+b2*10^(n-1)+...+bn*10^1+b*10^0
ÄÇÎÒÃÇ¿ÉÒÔ¿¼Âǽ׳˽øÖÆ£º
c1*n!+c2*(n-1)!+...+cn*1!+c*0!
²»¹ý½×³ËÓеãÎÊÌâ¾ÍÊÇ1!ÊÇ1£¬0!ÊÇ0£¬ÄǾÍʧȥÁË×îºóÒ»¸öµÄÒâÒ壬ËùÒÔ×îºóÒ»¸öÈ¥µô£º
c1*n!+c2*(n-1)!+...+cn*1!+c
ÄÇÇ°ÃæµÄ6¸öÊý¾ÍÒÀ´ÎÊÇ£º
0=0*2!+0*1!+0 => 012
1=0*2!+1*1!+0 => 021
2=1*2!+0*1!+0 => 102
3=1*2!+1*1!+0 => 120
4=2*2!+0*1!+0 => 201
5=2*2!+1*1!+0 => 210
ÉÏÃæµÄ¼ÆË㵱Ȼ¸úÒ»°ãµÄ½øÖƼÆË㲻ͬ£¬Ò»°ãµÄ½øÖƼÆËãÊÇÒªÇóÇ°ÃæµÄÊý²»ÄÜ´ó¹ýÄ£Êý£¬¶þ½øÖƵÄǰ׺ֻÄÜÊÇ0ºÍ1£¬Ê®½øÖƵÄǰ׺ֻÄÜÊÇ0~9£¬¶ø½×³Ë½øÖƵÄǰ׺¾ÍÖ»ÄÜÊÇ0~n£¬nÊÇÖ¸ºóÃæµÄn!£¬ÒÔ3=>120ΪÀý£¬Ç°ÃæµÄÔËËãÓ¦¸ÃÊÇÕâÑù×Ó£º
2!£º012£¬Ç°×º¾ÍÊÇtake outµÄË÷Òý£¬Àý×ÓµÄÊÇ1
1!£º02£¬Àý×ÓÖеÄÊÇ1£¬ÄÃ×ߵľÍÊÇ2
0!£º0£¬Ê£ÏÂÀ´µÄûµÃÑ¡Ôñ£¬ÕâÒ²ÊÇÿ¸öĩβ¶¼ÊÇ0µÄÔ­Òò
×éºÏÆðÀ´¾ÍÊÇ120
äöÎеÄÖÐÐÄÓÐÒ»¿é¿ÕµØ£¬¿Õ¿ÕµÄ¡£
3Â¥2011-06-10 12:04:56
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wangww2011

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

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+5): ¹ÄÀø½»Á÷~~ 2011-06-10 21:52:10
cÓïÑÔ·ÇÂùÁ¦°æ
µ±Ê±¾ÍÂÒдÁ˸ö Ò²²»Çå³þºÍÉÏÃæµÄËã·¨Ò»Ñù²»Ò»Ñù
CODE:
#include
#include


char *euler24(int n){
        int a[10],i,j,i0;
        a[0]=1;
        for(i=1;i<10;i++)a[i]=a[i-1]*(i+1);

        for(i=0;i<10;i++){
                if(a[i]>=n){
                        i0=i+1;break;
                }
        }

        int b[i0];
        for(i=i0-2;i>=0;i--){
                b[i]=n/a[i];
                n%=a[i];
                if(n==0){
                        b[i]--;
                        n=a[i];
                }
        }  

        int p[i0];
        char str[i0+1];
        for(i=0;i
        for(i=0;i                 str[i]=p[b[i0-i-2]]+48;
                for(j=b[i0-i-2];j                         p[j]=p[j+1];
     
        }
        str[i0-1]=p[0]+48;
        str[i0]='\0';

        return strdup(str);
}


int main(void){

        printf("%s\n",euler24(1000000));

        return 0;
}

[ Last edited by wangww2011 on 2011-6-10 at 13:28 ]
4Â¥2011-06-10 13:24:31
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

libralibra

ÖÁ×ðľ³æ (ÖøÃûдÊÖ)

æôÆï½«¾ü

¡ï ¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+4): ¹ÄÀø½»Á÷~~ 2011-06-10 21:52:28
python͵ÀÁ°æ
CODE:
# 2783915460
# Elapsed time: 0.35266074 seconds

import itertools
from mytictoc import tic, toc

tic()
m=itertools.permutations('0123456789')

for i in xrange(1000000-1):
    m.next()

print ''.join(list(m.next()))
toc()

matlab/VB/python/c++/Javaд³ÌÐòÇë·¢QQÓʼþ:790404545@qq.com
5Â¥2011-06-10 14:58:47
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

fatpig8832

Ìú¸Ëľ³æ (ÖøÃûдÊÖ)

¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
΢³¾¡¢ÃÎÏë(½ð±Ò+3): »¶Ó­²ÎÓë~~ 2011-06-10 21:52:46
´ËÌâ¸ÄСһµã¿ÉÒÔ×ö³õÖлòСѧ°ÂÊýÌâÁË...

10!=3628800, 10!/10=362880
1000000/362880=2.75------£¨0123456789£©µÚһλÊÇ2
1000000-362880*2=274240
362880/9=40320
274240/40320=6.80------£¨013456789£©µÚ¶þλÊÇ7
274240-40320*6=32320
40320/8=5040
32320/5040=6.40------£¨01345689£©µÚÈýλÊÇ8
32320-5040*6=2080
5040/7=720
2080/720=2.89------£¨0134569£©µÚËÄλÊÇ3
2080-720*2=640
720/6=120
640/120=5.33------£¨014569£©µÚÎåλÊÇ9
640-120*5=40
120/5=24
40/24=1.67------£¨01456£©µÚÁùλÊÇ1
40-24*1=16
24/4=6
16/6=2.67------£¨0456£©µÚÆßλÊÇ5
16-6*2=4
6/3=2
4/2=2------£¨046£©µÚ°ËλÊÇ4
´Ë´¦ÒÑʵÏÖÕû³ý£¬ºóÈýλ±ØÎª4¿ªÍ·µÄ×î´óÊý£¬¼´460.

ËùÒÔ×îºó½á¹ûΪ 2783915460...
6Â¥2011-06-10 15:50:03
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

libralibra

ÖÁ×ðľ³æ (ÖøÃûдÊÖ)

æôÆï½«¾ü

¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-06-13 19:33:20
ÒýÓûØÌû:
Originally posted by fatpig8832 at 2011-06-10 15:50:03:
´ËÌâ¸ÄСһµã¿ÉÒÔ×ö³õÖлòСѧ°ÂÊýÌâÁË...

10!=3628800, 10!/10=362880
1000000/362880=2.75------£¨0123456789£©µÚһλÊÇ2
1000000-362880*2=274240
362880/9=40320
274240/40320=6.80------£¨013456789£© ...

´Ë·¨ÉõÃî,Ò»¿ªÊ¼³ý362880µÄ1000000ÊÇÔõôÀ´µÄ?½âÊÍÏÂ,ллÁË
matlab/VB/python/c++/Javaд³ÌÐòÇë·¢QQÓʼþ:790404545@qq.com
7Â¥2011-06-10 16:21:24
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

holmescn

½ð³æ (ÕýʽдÊÖ)

¡ï ¡ï ¡ï
΢³¾¡¢ÃÎÏë(½ð±Ò+3): ¹ÄÀø½»Á÷~~ 2011-06-10 21:53:27
ÔΣ¬·¢ÍíÁË


Â¥ÉÏÔõôûÈËÌû´ð°¸ºÍʱ¼äÁË£¿

ÎÒµÄÏë·¨ÊÇÀûÓý׳ËÖ±½ÓËã¡£ÒòΪһ¸öÈ«ÅÅÁУ¬Æäʵ¾ÍÊÇÿ¸öÔªËØ¶¼ÒªÔÚÒ»¸öλÖÃÉϳöÏÖÒ»´Î¡£ÕâÑùÒ»¹²ÓÐn!¸öÅÅÁУ¨Õâ¸öµØÇòÈ˶¼ÖªµÀ£©¡£
ÕâÑù£¬Èç¹ûijһλȷ¶¨Á˵ϰ£¬ÄÇôÆäÓàµÄλÔÙÓÃÆäÓàµÄÊýÈ«ÅÅÁоÍÐÐÁË¡££¨Õâ»°ÔõôÕâÃ´ÈÆ¿Ú£©

ÒѾ­ÖªµÀ10!=3628800,9!=362880,ÕâÑù1000000 - 2*9! = 274240, Ò²¾ÍÊÇ˵µÚһλȡ0,1¶¼²»¹»Êý£¬È¡2£¬¶øºóÃæµÄûµÄÍê³ÉÈ«ÅÅÁо͹»100ÍòÁË¡£OK£¬µÚһλÊÇ2ÁË¡£
ÏÂÃæÁÐ±í£º

8! = 40320  274240 - 6 * 8! = 32320 µÚ2λ£º7
7! = 5040   32320  - 6 * 7! = 2080  µÚ3λ£º8
6! = 720    2080   - 2 * 6! = 640   µÚ4λ£º3
5! = 120    640    - 5 * 5! = 40    µÚ5λ£º9
4! = 24     40     - 1 * 4! = 16    µÚ6λ£º1
3! = 6      16     - 2 * 3! = 4     µÚ7λ£º5
2! = 2      4      - 2 * 2! = 0

×îºóÊ££º0 4 6 ÕâÈý¸öÊýÁË. ¶ø×îºóÒ»¸öÓà0ÁË¡£Ò²¾ÍÊǵÚ2¸öÅÅÁÐÕýºÃ¾Í¹»µÚ100Íò¸öÁË.ÕâÑù½á¹û¾ÍÊÇ£º2783915460

²»ÖªµÀ½á¹ûÊDz»ÊǶԡ£Õâ¸öÓÃʱµ±È»ºÜÉÙµÄÁË¡£
8Â¥2011-06-10 17:09:02
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

fatpig8832

Ìú¸Ëľ³æ (ÖøÃûдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
ÒýÓûØÌû:
Originally posted by libralibra at 2011-06-10 16:21:24:
´Ë·¨ÉõÃî,Ò»¿ªÊ¼³ý362880µÄ1000000ÊÇÔõôÀ´µÄ?½âÊÍÏÂ,ллÁË

Õâ¸ö...²»¾ÍÊÇÌâÄ¿ÖеÄÒ»°ÙÍòÂð...²»¹ýÕâ²»ÊDZà³Ì¶øÊÇËÀË㣬³õÖÐÉúÉõÖÁСѧÉú¶¼Äܸã³öÀ´...

8Â¥µÄ×ö·¨Ó¦¸ÃºÍÎÒµÄÒ»Ñù°É£¬ËäÈ»ÎÒûÔõô¿´¶®...
9Â¥2011-06-10 17:32:00
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

holmescn

½ð³æ (ÕýʽдÊÖ)

¡ï ¡ï ¡ï
΢³¾¡¢ÃÎÏë(½ð±Ò+3): ¹ÄÀø½»Á÷~~ 2011-06-10 21:53:45
python°æ´úÂ룬Ëã·¨¸Õ²Å½âÊ͹ýÁË¡£
CODE:
def fac(n):
    return reduce(lambda x, y: x*y, range(1, n+1))

n = 1000000
i = 9
numbers = range(10)
result = []

while i > 0 and n > 0:
    if n % fac(i) != 0:
        result.append(numbers[n/fac(i)])
    else:
        result.append(numbers[n/fac(i)-1])
    numbers.remove(result[-1])
    n  = n % fac(i)
    i -= 1

if len(numbers) > 0:
    numbers.reverse()
    result.extend(numbers)

print "".join([str(x) for x in result])

[ Last edited by holmescn on 2011-6-11 at 07:58 ]
10Â¥2011-06-10 18:03:37
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ holmescn µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 308Çóµ÷¼Á +3 ÖÕ²»ËÆ´Óǰ 2026-04-05 3/150 2026-04-05 22:23 by hemengdong
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +6 Ò»ÑùYWY 2026-04-05 6/300 2026-04-05 20:30 by ÄϺ½~ÍòÀÏʦ
[¿¼ÑÐ] 070300»¯Ñ§Ñ§Ë¶311·ÖÇóµ÷¼Á +10 Áº¸»¹óÏÕÖÐÇó 2026-04-04 12/600 2026-04-05 09:37 by guoweigw
[¿¼ÑÐ] 0854Çóµ÷¼Á +4 assdll 2026-04-03 4/200 2026-04-04 22:17 by hemengdong
[¿¼ÑÐ] 331Çóµ÷¼Á +3 niby 2026-04-02 3/150 2026-04-04 19:56 by À¶ÔÆË¼Óê
[¿¼ÑÐ] »¯¹¤Çóµ÷¼Á +11 ÀóÏã֥ʿҬÄÌ 2026-04-03 11/550 2026-04-03 22:06 by à£à£à£0119
[¿¼ÑÐ] 315·Ö 085602 Çóµ÷¼Á +15 26¿¼ÑÐÉϰ¶°æ26 2026-04-02 15/750 2026-04-03 12:45 by xingguangj
[¿¼ÑÐ] 316Çóµ÷¼Á +14 ÖÛ×Ô¹£ 2026-04-01 18/900 2026-04-03 10:28 by linyelide
[¿¼ÑÐ] 081200-11408-276ѧ˶Çóµ÷¼Á +6 ´Þwj 2026-04-02 6/300 2026-04-03 10:19 by À¶ÔÆË¼Óê
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +4 Ò»ÑùYWY 2026-04-03 4/200 2026-04-03 09:48 by À¶ÔÆË¼Óê
[¿¼ÑÐ] ÉúÎïѧ308·ÖÇóµ÷¼Á£¨Ò»Ö¾Ô¸»ª¶«Ê¦´ó£© +6 ÏàÐűػá¹ââÍòÕ 2026-03-31 7/350 2026-04-02 23:16 by JourneyLucky
[¿¼ÑÐ] ¿¼Ñе÷¼Á +3 Àîľ×Ó0120 2026-04-02 5/250 2026-04-02 21:45 by dongzh2009
[¿¼ÑÐ] 362Çóµ÷¼Á +14 Î÷ÄϽ»²ÄÁÏר˶3 2026-03-31 14/700 2026-04-02 17:50 by yunlongyang
[¿¼ÑÐ] 285Çóµ÷¼Á +14 AZMK 2026-04-02 14/700 2026-04-02 15:54 by ÉϾÅÌìÀ¿Ô£¨ºÃÔ
[¿¼ÑÐ] Ò»Ö¾Ô¸Ö£´ó²ÄÁϹ¤³Ì290Çóµ÷¼Á +20 Youth_ 2026-03-30 20/1000 2026-04-02 14:48 by 5896
[¿¼ÑÐ] 348»·¾³¹¤³Ìµ÷¼Á +3 ÎâÑå׿24k 2026-04-01 3/150 2026-04-02 09:14 by nanaliuyun
[¿¼ÑÐ] 285Çóµ÷¼Á +11 AZMK 2026-04-01 11/550 2026-04-01 22:40 by peike
[¿¼ÑÐ] 358Çóµ÷¼Á +3 ÍõÏòÑô»¨ 2026-03-31 3/150 2026-04-01 09:56 by zzchen2000
[¿¼ÑÐ] Çóµ÷¼Á ÉúÎïѧ 377·Ö +6 zzll03 2026-03-31 6/300 2026-03-31 17:33 by ÌÆãå¶ù
[¿¼ÑÐ] 085404 22408 315·Ö +5 zhuangyan123 2026-03-31 6/300 2026-03-31 13:48 by limeifeng
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û