Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Oleg I. Khovayko                     2:5020/400     07 Mar 2003  21:29:53
 To : Vjacheslav Maslov
 Subject : Re: задачка: A^3+B^3+C^3=D^3
 -------------------------------------------------------------------------------- 
 
 
 Vjacheslav Maslov wrote:
 
 > 
 > Работает, но медленно где-то 5-7 минут. Один мой знакомый утверждает, что
 > придумал алгоритм решения этой задачи, который отрабатывает за 2 сек на машине
 > класса P III.
 
 Hу вот ниже решение. Отрабатывает, правда, не ровно за 2 секунды, но
 сопоставимо:
 
 real    0m2.402s
 user    0m2.190s
 sys     0m0.210s
 
 Если раскомментировать вывод - еще секунда добавится...
 #include <map>
 #include <set>
 #include <iostream>
 
 using namespace std;
 
 int calc(int max) {
   map< int, set< int > > cd;
   int rescount = 0;  
   for(short d = 2; d <= max; d++)
     for(short c = 1; c < d; c++)
      cd[d*d*d-c*c*c].insert((c << 16) | d);
      
   for(short a = 1; a <= max; a++)
     for(short b = a; b <= max; b++) {
       int ab = a*a*a + b*b*b;
       if(cd.count(ab)) {
         const set< int > &cds = cd[ab];
         for(set< int >::const_iterator it(cds.begin());
         it != cds.end(); ++it) {
         rescount++;
                // cout << "Result: " << a << " " << b << " " 
          // << (*it >> 16) << " = " << ((short)*it) << endl; 
        } 
      }
      } 
    return rescount; 
 }
 
 main() {
   int cnt = calc(1000);
   cout << "Found results:" << cnt << endl; 
 }
 -- 
 #include <best/regards.hpp>
 Oleg I. KHOVAYKO  
 (301)435-5885 || WEB: http://olegh.spedia.net
 --- ifmail v.2.15dev5
  * Origin: National Center for Biotechnology Information (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 задачка: A^3+B^3+C^3=D^3   Vjacheslav Maslov   06 Mar 2003 01:15:54 
 Re: задачка: A^3+B^3+C^3=D^3   Vadim Miller   06 Mar 2003 00:59:13 
 Re: задачка: A^3+B^3+C^3=D^3   Igor Krassikov   06 Mar 2003 11:41:00 
 задачка: A^3+B^3+C^3=D^3   Kluchnikov Eugene   06 Mar 2003 13:52:14 
 Re: задачка: A^3+B^3+C^3=D^3   Soldatenkov Mitea   07 Mar 2003 03:08:44 
 Re: задачка: A^3+B^3+C^3=D^3   Oleg I. Khovayko   07 Mar 2003 21:29:53 
 Re: задачка: A^3+B^3+C^3=D^3   Igor Krassikov   07 Mar 2003 21:36:00 
 Re: задачка: A^3+B^3+C^3=D^3   Sergiy Kanilo   07 Mar 2003 21:43:32 
 Re: задачка: A^3+B^3+C^3=D^3   Dmitry Lipovoi   09 Mar 2003 10:57:46 
 Re: задачка: A^3+B^3+C^3=D^3   Sergiy Kanilo   11 Mar 2003 07:48:21 
 задачка: A^3+B^3+C^3=D^3   Sasha Pelepeichenko   07 Mar 2003 15:09:46 
 задачка: A^3+B^3+C^3=D^3   Vjacheslav Maslov   09 Mar 2003 01:05:22 
 задачка: A^3+B^3+C^3=D^3   Sasha Pelepeichenko   11 Mar 2003 01:14:26 
 задачка: A^3+B^3+C^3=D^3   Dima Danilov   11 Mar 2003 22:29:06 
 Re: задачка: A^3+B^3+C^3=D^3   Sergey Andrianov   07 Mar 2003 23:54:52 
Архивное /ru.algorithms/1152279e41cf7.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional