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

holmescn

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

[½»Á÷] Euler ¹¤³Ì µÚØ¥¶þÌâ: ÐÕµÄ×Ü·Ö ÒÑÓÐ5È˲ÎÓë

¸½¼þÖÐÊÇÒ»¸ö°üº¬ÁË5ǰ¸öÐÕµÄÎļþ¡£ÏȰÑËü°´×Öĸ±íÅÅÐò£¬È»ºó¼ÆËãÿ¸öÐÕµÄÖµ£¬²¢³ËÒÔÕâ¸öÐÕÔÚÎļþÖеÄÐòÊýµÃµ½Õâ¸öÐյķÖÊý¡£
ÀýÈ磬COLIN£¬ËüµÄ×ÖĸֵÊÇ£º3+15+12+9+14=53£¬ÔÚÅÅÐòºóµÄÁбíÖУ¬ËüÔÚµÚ938룬ÕâÑùCOLINµÄµÃ·ÖΪ£º53*938=49714
ÄÇôÕâ¸öÎļþÖÐËùÓÐÐÕµÄ×Ü·ÖÊǶàÉÙ£¿
»Ø¸´´ËÂ¥

» ±¾ÌûÒÑ»ñµÃµÄºì»¨£¨×îÐÂ10¶ä£©

» ²ÂÄãϲ»¶

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

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

huycwork

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

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
dubo(½ð±Ò+1): лл½»Á÷ 2011-06-05 12:17:28
΢³¾¡¢ÃÎÏë(½ð±Ò+4): 2011-06-06 20:19:54
Éæ¼°µ½Îı¾´¦ÀíµÄ¹ßÀýÊÇPerl£º
CODE:
#!/usr/bin/perl
open F, "<", "names.txt";
$f = ;
@ns = sort eval ($f);
foreach(@ns){
    local (*v) = \$_;
    $v += ord($_) - ord('A') + 1 foreach(/(.)/g);
}
unshift @ns, 0;
$s += $_ * $ns[$_] foreach(1..@ns);
print $s;

[ Last edited by huycwork on 2011-6-6 at 09:27 ]
äöÎеÄÖÐÐÄÓÐÒ»¿é¿ÕµØ£¬¿Õ¿ÕµÄ¡£
3Â¥2011-06-05 10:12:44
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
²é¿´È«²¿ 14 ¸ö»Ø´ð

libralibra

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

æôÆï½«¾ü

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
dubo(½ð±Ò+1): лл½»Á÷ 2011-06-05 12:17:18
΢³¾¡¢ÃÎÏë(½ð±Ò+4): 2011-06-06 20:19:45
matlab code
CODE:
%% What is the total of all the name scores in the file?
% For example, when the list is sorted into alphabetical order,
% COLIN, which is worth 3 + 15 + 12 + 9 + 14 = 53, is the 938th name in the list.
% So, COLIN would obtain a score of 938 ¡Á 53 = 49714.
function result = euler22()
tic;
fid = fopen('D:\euler\names.txt');
names = fgets(fid); % ¶Áȡȫ²¿ÄÚÈݵ½×Ö·û´®
fclose(fid);

names = strrep(names,'"',''); % ɾ³ý"
namelist = regexp(names,',','split'); % ÓöººÅ·Ö¸ô
sname = sort(namelist); % ÅÅÐò

result = 0;
for i=1:length(sname) % Ñ­»·
    curname = lower(sname{i}); % ȫСд
    curname = curname-repmat('a',1,length(curname)); % ÓëÈ«a×÷²î
    cursum = sum(curname+1); % ÇóºÍ
    result = result+cursum*i; % ³Ë˳Ðò¼ÆËãscore,ÀÛ¼Ó
end
toc;
end

½á¹ûʱ¼ä
CODE:
% Elapsed time is 0.307340 seconds.
% ans =
%    871198282

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

wangww2011

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

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
xzhdty(½ð±Ò+2): лл½»Á÷ 2011-06-05 14:21:41
ÓàÔó³É(³ÌÐòÇ¿Ìû+1): ¹ÄÀø½»Á÷£¡ 2011-06-18 15:55:16
»°Ëµperl°æµÄÕæÊǼò½à
»¹ÊÇÓÃCд°É£¬ËäÈ»¿´×Åͦ²»Ë¬µÄ
CODE:
#include
#include
#include


#define SIZE 50000

inline int cmp(const void *p1,const void *p2)
{
        return strcmp((char *)p1,(char *)p2);
}

inline int count(const char *p){
        int i=0,res=0;
        while(p[i]!='\0')res+=p[i++]-64;
        return res;
}

long euler22(){
        int i=0,length;
        FILE *fp=fopen("names.txt", "r");
        if(fp == 0) return -1;

        char str[SIZE];
        if (NULL == fgets(str, SIZE, fp)) {
                return -1;
        }
        fclose(fp);

        char *delims="\",";
        char *p=strtok(str,delims);
        char names[6000][15];
        while(p!=NULL){
                strcpy(names[i++],p);
                p=strtok(NULL,delims);
        }
        length=i;
  
        qsort(names,length,sizeof(names[0]),cmp);
  
        long  sum=0;
        for(i=0;i                 sum+=(i+1)*count(names[i]);
      
        return sum;
}



int main(void){

        printf("%ld\n",euler22());
  
        return 0;
}

4Â¥2011-06-05 13:42:07
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

libralibra

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

æôÆï½«¾ü

¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
jjdg(½ð±Ò+1): ¶ËÎç½Ú¿ìÀÖ 2011-06-06 03:21:53
ÉÏpython
CODE:
#! usr/bin/env python
import string

s = open('names.txt').read()[1:-1].split('","')
s.sort()
print sum([(i+1)*sum([string.ascii_uppercase.index(c)+1 for c in s[i]]) for i in xrange(len(s))])

matlab/VB/python/c++/Javaд³ÌÐòÇë·¢QQÓʼþ:790404545@qq.com
5Â¥2011-06-05 17:24:10
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 288Çóµ÷¼Á£¬Ò»Ö¾Ô¸»ªÄÏÀí¹¤´óѧ071005 +5 ioodiiij 2026-03-17 5/250 2026-03-19 18:22 by zcl123
[¿¼ÑÐ] ÄÜÔ´²ÄÁÏ»¯Ñ§¿ÎÌâ×éÕÐÊÕ˶ʿÑо¿Éú8-10Ãû +4 ÍÑÓ±¶ø³ö 2026-03-16 12/600 2026-03-19 16:17 by ÍÑÓ±¶ø³ö
[¿¼ÑÐ] Ò»Ö¾Ô¸Î人Àí¹¤²ÄÁϹ¤³Ìר˶µ÷¼Á +4 Doleres 2026-03-19 4/200 2026-03-19 15:27 by ¶¡¶¡*
[¿¼ÑÐ] ±¾ÈË¿¼085602 »¯Ñ§¹¤³Ì ר˶ +17 ²»ÖªµÀ½Ðʲô£¡ 2026-03-15 19/950 2026-03-19 15:06 by ¾¡Ë´Ò¢1
[¿¼ÑÐ] Çó²ÄÁϵ÷¼Á +10 ¸ô±Ú³ÂÏÈÉú 2026-03-12 10/500 2026-03-19 09:15 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] »¯Ñ§¹¤³Ì321·ÖÇóµ÷¼Á +15 ´óÃ×·¹£¡ 2026-03-15 18/900 2026-03-18 14:52 by haxia
[¿¼ÑÐ] 297Çóµ÷¼Á +8 Ï·¾«µ¤µ¤µ¤ 2026-03-17 8/400 2026-03-18 14:30 by laoshidan
[¿¼ÑÐ] 331Çóµ÷¼Á£¨0703Óлú»¯Ñ§ +7 ZY-05 2026-03-13 8/400 2026-03-18 14:13 by 007_lilei
[¿¼ÑÐ] 334Çóµ÷¼Á +3 Ö¾´æ¸ßÔ¶ÒâÔÚ»úÐ 2026-03-16 3/150 2026-03-18 08:34 by lm4875102
[¿¼ÑÐ] ¿¼ÑÐÇóµ÷¼Á +3 éÙËÌ. 2026-03-17 4/200 2026-03-17 21:43 by ÓÐÖ»ÀêÅ«
[¿¼ÑÐ] Ò»Ö¾Ô¸ÄϾ©´óѧ£¬080500²ÄÁÏ¿ÆÑ§Ó빤³Ì£¬µ÷¼Á +4 Jy? 2026-03-16 4/200 2026-03-17 11:02 by gaoqiong
[¿¼ÑÐ] 304Çóµ÷¼Á +4 ahbd 2026-03-14 4/200 2026-03-16 16:48 by ÎҵĴ¬Îҵĺ£
[¿¼ÑÐ] 070305Çóµ÷¼Á +3 mlpqaz03 2026-03-14 4/200 2026-03-15 11:04 by peike
[¿¼ÑÐ] 085601²ÄÁϹ¤³Ì315·ÖÇóµ÷¼Á +3 yang_0104 2026-03-15 3/150 2026-03-15 10:58 by peike
[¿¼ÑÐ] ±¾¿ÆÄϾ©´óѧһ־Ը´¨´óҩѧ327 +3 ÂóÌï¸ûÕß 2026-03-14 3/150 2026-03-14 20:04 by ÍâÐÇÎÄÃ÷
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤ 323 Ó¢Ò»+Êý¶þ+Îﻯ£¬Ò»Ö¾Ô¸£º¹þ¹¤´ó ±¾È˱¾¿ÆË«Ò»Á÷ +4 ×ÔÓɵÄ_·ÉÏè 2026-03-13 5/250 2026-03-14 19:39 by hmn_wj
[¿¼ÑÐ] 289Çóµ÷¼Á +4 ÕâôÃû×ÖÕ¦Ñù 2026-03-14 6/300 2026-03-14 18:58 by userper
[¿¼ÑÐ] 297Çóµ÷¼Á +4 ѧº£Æ¯²´ 2026-03-13 4/200 2026-03-14 11:51 by ÈÈÇéɳĮ
[¿¼ÑÐ] ÕÐÊÕ0805£¨²ÄÁÏ£©µ÷¼Á +3 18595523086 2026-03-13 3/150 2026-03-14 00:33 by 123%¡¢
[¿¼ÑÐ] 290Çóµ÷¼Á +3 ADT 2026-03-13 3/150 2026-03-13 10:19 by peike
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û