Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Вниз

Пятничные задачки или типа того   Найти похожие ветки 

 
Vasya.ru ©   (2005-02-25 01:58) [0]

Решил вот подбросить любителям пару задачек, итак:
1. Длинная арифметика.

Рассмотрим натуральное число N. Все натуральные числа, меньшие N, разделим на три группы. В первую группу войдут числа, взаимно простые с N. Во вторую группу войдут делители N. Все остальные числа образуют третью группу. Например, для N=6 в первой группе будут числа 1 и 5, во второй - 1,2 и 3, а в третьей - 4.
Требуется для заданного числа N определить количество чисел во всех трех группах.

2. Пирамида

Даны длины шести ребер пирамиды, найти ее объем.

3. Копирование

На днях купил в комп клуб новую игрушку. Пока она есть только на компьютере админа, но ее нужно установить на все N компьютеров, имеющихся в клубе. Беда в том, что что-то случилось с сетью (а CD-ROMов у нас вообще нет), и единственный способ передачи информации с одного компа на другой - скопировать ее, используя нуль-модем (провод, соединяющий два компьютера напрямую). Таким образом, с любого компьютера, где уже установлена программа, можно скопировать её на какой-то другой (но только на один) всего за один час. В вузе всего K нуль-модемных шнуров. Ваша задача по заданным числам N и K оценить минимальное время, необходимое для копирования программы на все имеющиеся компьютеры.


 
Alx2 ©   (2005-02-25 09:56) [1]

2. Блин, запарился упрощать, так что сорри за кучу малу:
V = 1/12*sqrt(l^2*b^2*c^2+l^2*b^2*m^2-l^2*c^2*m^2-a^4*m^2-m^4*a^2+k^2*c^2*m^2+a^2*k^2*c^2+a^2*l^2*b^2+k^2*l^2*c^2+k^2*b^2*c^ 2-k^2*b^2*m^2+c^2*a^2*m^2-k^4*c^2-k^2*a^2*l^2+l^2*a^2*m^2-l^2*b^4-b^2*a^2*c^2+b^2*a^2*m^2+k^2*a^2*m^2-k^2*c^4-l^4*b^2+k^ 2*l^2*b^2)


 
Alx2 ©   (2005-02-25 09:58) [2]

Покороче :
V = 1/12*sqrt((c^2*m^2-c^4-k^2*c^2)*k^2+(k^2*c^2-c^2*m^2)*l^2+((c^2-m^2)*k^2+(k^2+c^2+m^2-l^2)*l^2-l^2*b^2)*b^2+((c^2-m^2)*m ^2+(c^2+m^2)*k^2+(m^2-k^2)*l^2+(l^2+m^2-c^2)*b^2-m^2*a^2)*a^2)


 
MBo ©   (2005-02-25 12:44) [3]

>Alx2 ©   (25.02.05 09:58) [2]

function TetrahedronVolume(ab, bc, ac, ad, bd, cd: Double): Double;
begin
 if (ab + bc <= ac) or (ac + bc <= ab) or (ab + ac <= bc) or
   (ab + bd <= ad) or (ad + bd <= ab) or (ab + ad <= bd) or
   (bd + bc <= cd) or (cd + bc <= bd) or (bd + cd <= bc) then
   Result := 0
 else begin
   ab := ab * ab;
   bc := bc * bc;
   ac := ac * ac;
   ad := ad * ad;
   bd := bd * bd;
   cd := cd * cd;
   Result := Sqrt(ab * (cd * (bc + bd + ac + ad - cd - ab) +
                 (ad - ac) * (bc - bd)) +
                  bc * (ad * (cd + bd + ac - bc - ad) + bd * (ac - cd)) +
                  ac * (bd * (cd + ad - bd - ac) - cd * ad)) / 12
 end;
end;


совпадут развесистые строки? :);)
проверка:
единичный V=0.11785
три единичных и три по Sqrt(2) - V=1/6


 
Alx2 ©   (2005-02-25 13:05) [4]

MBo ©   (25.02.05 12:44) [3]

1. Совпадают. Sqrt(2)/12
2. Можно подобрать порядок следования аргументов так, чтобы совпали.

Но интересно, что комутативности нет (в твоем варианте тоже) :)

V(sqrt(2),sqrt(2),sqrt(2),1,1,1) = 1/6;
V(sqrt(2),sqrt(2),1,sqrt(2),1,1) = 1/12*sqrt(5);
....


 
MBo ©   (2005-02-25 13:12) [5]

3.

function TForm1.CalcCopyTime(N,K:Integer):Integer;
var
 Last:Integer;
begin
 Last:=N-1;
 Result:=0;
 if K<=0 then Exit;
 while Last>0 do begin
   Inc(Result);
   Dec(Last,MinIntValue([N-Last,Last,K]));
 end;
end;


>Alx2 ©  
>Но интересно, что комутативности нет (в твоем варианте тоже) :)
Поэтому я и обозначил отрезки между вершинами тетр. ABCD явным образом.
Во втором тесте я имел в виду тетраэдр с вершинами в нуле координат и в единичных точках по осям.


 
Alx2 ©   (2005-02-25 13:25) [6]

MBo ©   (25.02.05 13:12) [5]

>Поэтому я и обозначил отрезки между вершинами тетр. ABCD явным
>образом.

Понятно. У меня, как всегда, сработало ложное предположение.


 
Mystic ©   (2005-02-25 14:50) [7]

Повторю ссылку:
http://www.highiqsociety.org/common/iqtests/hdtest_printable/index.htm

Есть решения???


 
Mystic ©   (2005-02-25 14:51) [8]

Повторю ссылку:
http://www.highiqsociety.org/common/iqtests/hdtest_printable/index.htm

Есть решения???


 
Vasya.ru ©   (2005-03-02 16:22) [9]

Alx2 ©   (25.02.05 9:58) [2]
MBo ©   (25.02.05 12:44) [3]

для единичного правильно, но вот с другими тестами проблема - 1000, 1000, 1000, 3, 4, 5 - объем равен 1999.9937, а в Ваших вариантах нет


 
Alx2 ©   (2005-03-02 16:43) [10]

Vasya.ru ©   (02.03.05 16:22) [9]
Напиши чему равно каждое ребро в виде AB=? BC=? и т.д. Потом проверь возможна ли такая пирамида. А если возможна - значения в формулу и получим ответ.


 
MBo ©   (2005-03-02 16:44) [11]

>Vasya.ru ©   (02.03.05 16:22) [9]

Memo1.Lines.Add(FormatFloat("0000.00000000",TetrahedronVolume(3,4,5,1000,1000,1000)));
выдает
1999.99374999


 
Vasya.ru ©   (2005-03-02 17:22) [12]

MBo ©   (02.03.05 16:44) [11]
выдает
1999.99374999

Ну тогда мои извинения


 
Agent13 ©   (2005-03-02 17:58) [13]


> Mystic ©   (25.02.05 14:50) [7]
> Повторю ссылку:
> http://www.highiqsociety.org/common/iqtests/hdtest_printable/index.htm
>
> Есть решения???

:) Больной вопрос :) На прошлых выходных надеялся порешать, но прочитав условия нескольких задач, желание пропало. Надеюсь эти выходные будут продуктивнее :)



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.075 c
1-1110055150
GranT
2005-03-05 23:39
2005.03.20
сворачивание окон


1-1110122759
grusty
2005-03-06 18:25
2005.03.20
Почему событие OnMouseMove повторяется бесконечно...


3-1108641488
LEONardo
2005-02-17 14:58
2005.03.20
Обработка двух групповых функций


3-1108649874
DimonNew
2005-02-17 17:17
2005.03.20
Delphi2005 и ClientDataSet


1-1109749428
tmpGuest
2005-03-02 10:43
2005.03.20
Как пропустить поиск в определенных каталогах ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский