Страница 1 из 1 |
Олимпиада по информатике 9класс
Автор | Сообщение |
---|---|
|
0
Задача 1.Разложение на простые множители
Число 12 можно разложить тремя способами : 12=2*2*3=2*3*2=3*2*2 А сколькими способами можно записать разложение на простые множители N? Фомат входных данных Вводится одно натуральное число N (2<(или равно)N <(или равно)1000. Формат выходных данных Вводится одно число - количество различныъ записей разложения. Примеры Входные данные Выходные данные 12 3 13 1 уважаемые знатоки,хелпаните Добавлено спустя 39 секунд: всё в паскале абс |
26 ноя 2011, 07:44 |
|
|
0
Ну ничего себе!
|
26 ноя 2011, 07:47 |
|
|
0
Антон записал ряд натуральных чисел в порядке возрастания : 1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,20,21,22,23 и т.д. Затем вычеркнул из него все числа , в которых имеется хотя бы две одинаковых цифры , и получил последо- вательность : 1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17,18,19,20,21,23 и т.д. Вам необоходимо по заданному N найти N-oe по счету число в получившейся последо- вательности. Формат входных данных В единственной строке входного файла INPUT.TXT записано натуральное число N (1<(или равно)N<(или равно)10000) формат выходных данных В единственную строку выходного файла OUTPUT.TXT нужно вывести N-oe по счету число без одинаковых цифр. Пример INPUT.TXT OUTPUT.TXT. 100 123 2 ЗАДАЧА |
26 ноя 2011, 07:51 |
|
<Петушиная обоима> Сервер: Черный Шрам Рейтинг поля боя: 768 2х2: 1602 3х3: 1960 5х5: 1436 |
0
иди отсюда, никто помогать не будет
|
26 ноя 2011, 08:07 |
|
|
0
#671
переписал, отсканил, залил в интернеты. всё для тебя! а картинку то и не показывает. попробуй сюда перейти |
26 ноя 2011, 08:09 |
|
|
0
... a:=1; pereh: if n>1 then begin for i:=2 to 500 do begin x:=n mod i; if x==0 then begin a:=a+1; n:=n+1; goto pereh; end; end; end; x:=a!; {это кол-во способов} ... Вложение: Безымянный.JPG основной текст программы примерно такой (синтаксис возможно не совсем правильный, т.к. за паскалем не сидел очень давно), но вроде все правильно (если есть знатоки пусть проверят и поправят). остальное ТС пусть допишет сам, там не сложно. |
26 ноя 2011, 09:33 |
|
<Мертвая Хватка> Сервер: Гордунни |
0
Xanes писал(а): ... a:=1; pereh: if n>1 then begin for i:=2 to 500 do begin x:=n mod i; if x==0 then begin a:=a+1; n:=n+1; goto pereh; end; end; end; x:=a!; {это кол-во способов} ... Вложение: Безымянный.JPG основной текст программы примерно такой (синтаксис возможно не совсем правильный, т.к. за паскалем не сидел очень давно), но вроде все правильно (если есть знатоки пусть проверят и поправят). остальное ТС пусть допишет сам, там не сложно. GoTo в паскале использовать нельзя. Это типо плохой тон. |
26 ноя 2011, 10:03 |
|
|
0
1. Вбиваем в гугл "разложение числа на простые множители" алгоритм
2. Находим что-то вроде 3. Выбираем удобный для реализации. 4. Переводим в код. 5. Тестируем 6. Профит. |
26 ноя 2011, 10:07 |
|
|
0
Свуй писал(а): 1. Вбиваем в гугл "разложение числа на простые множители" алгоритм 2. Находим что-то вроде 3. Выбираем удобный для реализации. 4. Переводим в код. 5. Тестируем 6. Профит. потом надо вычислить количество возможных перестановок |
26 ноя 2011, 10:41 |
|
|
0
Во второй задаче нужно вычесть из N число элементов меньших N состоящих из одинаковых чисел. Их примерно (10 * (floor(log10(N))-1)) + (N > firstNumInValue(N)*ones(round(log10(N)) : N ? N-1), где соответственно firstNumInValue это операция взятия старшего разряда в десятичной форме, а ones - построение вектора из единиц в виде числа.
|
26 ноя 2011, 11:56 |
|
Страница 1 из 1 |