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

Вниз

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

 
bogdan   (2005-09-27 21:06) [0]

Здравствуйте !
Вот опять приходится решать интересную задачку!
Дано 100 чисел. от 1 до 50. Найти сколько среди них чисел Фибоначчи и сколько чисел у которых первая значущая цифра в десятиричном виде 1 или 2.

Мои размышления малы: можно например упорядочить список по возрастанию, а потом - а потом не знаю что делать....
Надеюсь что вы подскажете. С уважением...


 
S@ska   (2005-09-27 22:55) [1]


> Вот опять приходится решать интересную задачку!

)))))))
я думаю что проще сделать так
M   : array [0..49] of Integer; // Массив с введенными числами

for i := Low (M) to High (M) do
begin
if (M[i] div 10)  in [1,2] then .... // Условие 2

end;
А для чисел Фибоначчи содать просто массив этих чисел и на каждой итерации вызывать функцию, которая проверяла бы входит ли M[i] в даный массив или нет.
Сортировать по моему ничего не надо _))


 
Думкин ©   (2005-09-28 06:12) [2]

> Мои размышления малы:

В описанном - они вообще отсутствуют.

Интерес, если его тут проявить - в создании оптимального алгоритма. А в тупую - пишется - 10 минут с отладкой. Максимум.


 
Сайбель Алексей ©   (2005-09-28 06:53) [3]

По моему особо мудрить здесь не надо, дано всего лишь 100 чисел. Никаких time limit"ов тут явно не будет чтобы переводить алгоритм, допусти из O(N*N) в lg(N). Так что в лоб сойдет.
Вот используй рекурсивную функцию для чисел фибоначчи:
x[1]=x[2]=1
x[n]=x[n-1]+x[n-2] при n > 2


 
bogdan   (2005-09-28 08:23) [4]

спасибо попробую


 
bogdan   (2005-10-10 19:54) [5]

Привет !
Можете подсказать можно ли cделать следующее.
Можно ли представить масив как множество.? Поясняю:
Например есть у  нас переменная i целочисленого типа. с помощью оператора
if i in [1,4,5] then.... проверяем местится ли она(значение) в множестве 1,4,5.А вот если, например, у нас есть массив, то, чтоб не писать функцию проверки принадлежности значения переменной масиву, можно ли как-то преобразовать масив в множество и проверить так как написано выше?


 
Anatoly Podgoretsky ©   (2005-10-10 20:04) [6]

bogdan   (27.09.05 21:06)  
Вторая задача проще решается через строковое представление чисел
S[1] = N


 
bogdan   (2005-10-10 23:08) [7]

Anatoly Podgoretsky ©
Я не понял вааше


 
jack128 ©   (2005-10-11 00:55) [8]

bogdan   (10.10.05 23:08) [7]
Я не понял вааше

for i := low(Arr) to high(Arr) do
 if IntToStr(arr[i])[1] in ["1", "2"] then // Первая цифра - единица или двойка

   

S@ska   (27.09.05 22:55) [1]
if (M[i] div 10)  in [1,2] then .... // Условие 2

а если M[i] = 2 то что будет ?


 
bogdan   (2005-10-11 15:34) [9]


> S@ska   (27.09.05 22:55) [1]

это вааще неправильно.
должно быть так
s:=a[i]-(a[i] div 10)*10 ;
   if s in [1,2] then


 
bogdan   (2005-10-11 15:35) [10]


> jack128 ©   (11.10.05 00:55) [8]

пасибо за совет



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

Форум: "Начинающим";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.039 c
9-1119607531
ABS
2005-06-24 14:05
2005.11.06
GLScene


14-1129468514
alexsis
2005-10-16 17:15
2005.11.06
DVD проигрыватели


14-1129402421
Карелин Артем
2005-10-15 22:53
2005.11.06
Тихо сам с собой комп ведет разговор...


9-1119729614
Ford
2005-06-26 00:00
2005.11.06
GTA dff


4-1125093097
ronyn
2005-08-27 01:51
2005.11.06
Как шрифт установить?...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский