Информатика

2 621 задачавместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Алиса знает, что если у числа n нет делителя, не превосходящего\(\sqrt n\), то число n - простое и его минимальным простым делителем будет само число n. Вас попросили написать программу, которая будет находить минимальный простой делитель у любого числа.

Решение оформите с использованием функций. Напишите следующие функции:
- функцию isPrime(n), которая будет принимать целое число и возвращать True, если число простое и False - если не простое.
- функцию minDivisor(n), которая будет возвращать минимальный простой делитель.

Основная программа должна содержать ввод числа, вызов функции minDivisor(n) и вывод ответа.

Входные данные
Программа получает на вход натуральное число n > 1.

Выходные данные
Выведите ответ на задачу.
 
Примеры
Входные данные Выходные данные
1 4 2
2 5 5
Пиксельный экран выводит каждую цифру в виде картинки 3х5.
1 2 3 4 5
 *
 *
 *
 *
 *
***
  *
***
*
***
***
  *
***
  *
***
* *
* *
***
  *
  *
***
*
***
  *
***
6 7 8 9 0
***
*
***
* *
***
***
  *
 *
*
*
***
* *
***
* *
***
***
* *
***
  *
***
***
* *
* *
* *
***

На вход программе подается натуральное число n (n <= 109).

Выведите это число в виде картинки на пиксельном экране. Каждую цифру выводите с новой строки. Порядок цифр должен соответствовать порядку цифр в исходном числе (то есть сначала выводится первая цифры, затем - вторая и т. д.). Если после звездочки (*) в строке больше ничего нет, то пробелы выводить не нужно.

 
 
Примеры
Входные данные Выходные данные
1 12
 *
 *
 *
 *
 *
***
  *
***
*  
***
Средние значение между какими-либо данными можно вычислять разным способом. В математике выделяют следующие средние значения:
  1. среднее арифметическое чисел a и b\(\dfrac{a+b}{2}\)
     
  2. среднее геометрическое чисел a и b: \( \sqrt{a\cdot b}\);
     
  3. среднее гармоническое чисел a и b\(\dfrac{2ab}{a+b}\);
     
  4. среднее квадратичное чисел a и b: \( \sqrt{\dfrac{a^2+b^2}{2}}\).

Формат входных данных
На вход подается два вещественных числа a и (1 <= a, b <= 1000).

Формат выходных данных
Программа должна вывести 4 числа – среднее арифметическое, геометрическое, гармоническое и квадратичное. Каждое число выводиться с точностью не менее 6 знаков после запятой на отдельной строке. 
Дано положительное вещественное число. Выведите его первую цифру после десятичной точки.

Формат входных данных
На вход подается вещественное число.

Формат выходных данных
Выведите ответ на задачу.
Пусть  \(N(n,k) = n+\overline{nn}+\overline{nnn} + ... +\underbrace{\overline{n..n}}_{k}\). По заданному значению n и k посчитайте значение N(n, k).

Входные данные
Программа получает на вход две строки. В первой строке записано натуральное число n (1<=n<=9), во второй строке - натуральное число k (1 <= k <= 10).

Выходные данные
Выведите на экран N(n, k) в виде выражения и ответа.
 
Примеры
Входные данные Выходные данные
1
1
3
1+11+111=123
Пусть S(n) - сумма цифр в десятичной системе счисления целого числа n. Например, S(123)=1+2+3=6.

Для двух трехзначных целых чисел A и B, найдите большее из S(A) и S(B).

Входные данные
На вход подается одна строка, содержащая два целых числа A и B (100 <= A, B <= 999).

Выходные данные
Выведите значение большего из значений S(A) и S(B). Если они равны, выведите S(A).

Обратите внимание, что при решении задачи нельзя пользоваться операциями деления.
Примеры
Входные данные Выходные данные
1 123 234 9
Однажды, устав от похода в школу, Томми захотел узнать, сколько дней осталось до субботы. Мы знаем, что этот день был будним, и название дня недели было S (по-английски).Сколько дней оставалось до первой субботы после этого дня (считая саму субботу, но не считая день S)?

Входные данные
На вход подается строка S (S может быть  MondayTuesdayWednesdayThursday или Friday).

Выходные данные
Выведите на экран ответ на задачу

Используйте вложенные условия (конструкцию elif для языка Python и else if для других языков).
 
Примеры
Входные данные Выходные данные
1
Wednesday
3

Даны две целочисленные последовательности, каждая из которых имеет длину NA = (A1, A2, ..., AN) и B = (B1, B2, ..., BN).
Все элементы A различны. Все элементы B тоже разные.

Выведите следующие два значения.

  1. Количество целых чисел, содержащихся в обоих и B, появляющихся в одной и той же позиции в двух последовательностях. Другими словами, количество целых i чисел такое, что A= Bi.
  2. Количество целых чисел, содержащихся в обоих и B, появляющихся в разных позициях в двух последовательностях. Другими словами, количество пар целых (i, j) чисел, таких, что A= Bи i ≠ j.


Входные данные
Программа получает на вход три строки. В первой строке записано одно число N (1 <= N <= 1000) - количество чисел последовательности. Во второй строке записаны числа A1, A2, ..., AN, все числа различные. В третьей строке - числа B1, B2, ..., B, все числа различные (1 <= Ai, Bi <= 109). 

Выходные данные
Выведите в первой строке ответ на первый вопрос, во второй строке - на второй.
 
 
Примеры
Входные данные Выходные данные
1
4
1 3 5 2
2 3 1 4
1
2 
2
3
1 2 3
4 5 6
0
0

Дан массив, состоящий из целых чисел. Известно, что числа упорядочены по неубыванию (то есть каждый следующий элемент не меньше предыдущего). Напишите программу, которая определит количество различных чисел в этом массиве.


Входные данные

Сначала задано число N - количество элементов в массиве (1 <= N <= 100). Далее через пробел записаны N чисел - элементы массива. Массив состоит из целых чисел, находящихся в пределах от -231 до 231


Выходные данные

Необходимо вывести единственное число - количество различных чисел в массиве.

 
Примеры
Входные данные Выходные данные
1 5
1 1 1 2 2
2

Дан массив, состоящий из целых чисел. Напишите программу, которая в данном массиве определяет количество элементов, у которых имеются два соседних элемента и, при этом, оба соседних элемента меньше данного.


Входные данные

Сначала задано число N - количество элементов в массиве (1 <= N <= 10000). Далее через пробел записаны N чисел - элементы массива. Массив состоит из целых чисел.


Выходные данные

Необходимо вывести количество элементов массива, у которых два соседа и которые при этом строго больше обоих своих соседей.

 
Примеры
Входные данные Выходные данные
1
5
1 2 3 4 5
0
2
5
2 3 2 4 3
2
В колоде у Громозеки находятся карты, на которых написано по одному целому числу. Каждое число в колоде встречается ровно 4 раза. 
Таким образом, в колоде имеются 4 карты с числом 1, 4 карты с числом 2, ..., 4 карты с числом N. Всего в колоде 4*N карт.

Громозека перетасовал эти карты, а затем спрятал одну из них и дал вам стопку оставшихся 4*N-1 карт. На i-й карте (1<= i <=4*N−1) из стопки написано целое число Ai.

Найдите целое число, записанное на карте, которую спрятал Громозека.

Входные данные
Программа получает на вход две строки. Первая строка содержит целое число N (1 <= N <= 105).  Вторая строка содержит 4*N-1 целых чисел Ai (1 <= Ai <= 4*N−1. 1<= i <=4*N−1). Для каждого (1<=k<=N) существует не более 4 индексов i, таких, что Ai=k.


Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 3
1 3 2 3 3 2 2 1 1 1 2
3
2 1
1 1 1
1
3 4
3 2 1 1 2 4 4 4 4 3 1 3 2 1 3
2

Сегодня мальчик Саша на уроке математики узнал про фракталы. Учитель показывал так называемую «кривую дракона». Она представляет собой геометрическую фигуру, которая строится следующим образом: на первом шаге проводится отрезок из начала координатной плоскости в точку (0; 1). Далее на каждом шаге из конца фрактала повторяется уже нарисованная часть фигуры, повернутая на 90 градусов против часовой стрелки (см. рисунок).

После уроков Саша попробовал сам изобразить «кривую дракона», и теперь он хочет знать, в какой точке координатной плоскости он закончил рисовать фрактал, проделав описанные выше N шагов. Требуется написать программу, которая по заданному числу N определяет координаты конца фрактала после выполнения N шагов.



Входные данные
Вводится одно целое число N (1 <= N <= 30).

Выходные данные
Выведите два числа через пробел - координаты конца фрактала.
 
 
Примеры
Входные данные Выходные данные
1 2 1 1
2 4 2 -2
Последовательность состоит из натуральных чисел и завершается числом 0. Определите, какое количество элементов этой последовательности, равны ее наибольшему элементу.

Входные данные
Вводится последовательность целых чисел, оканчивающаяся числом 0 (само число 0 в последовательность не входит, а служит как признак ее окончания).

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 5
4
8
8
8
0
3
По данному натуральному числу N найдите сумму чисел \(1 + {1\over {1!}} + {1 \over {2!}} + {1 \over {3!}}+... + {1 \over {N!}}\). Количество действий должно быть пропорционально N.

Входные данные
Программа получает на вход натуральное число N.

Выходные данные
Необходимо вывести  результат вычисления в виде действительного числа c точностью до 5 знаков после запятой.
 
 
Примеры
Входные данные Выходные данные
1 1 2
Напишите программу, вычисляющую \(2^N\).

Входные данные
Программа получает на вход натуральное число N (N<=30).

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 4 16
Когда  Громозека держит в руках сразу две печеньки с числами, он сразу пробует преобразовать большее число в меньшее. При преобразовании он использует только две команды: “Вычесть 1” и “Разделить на 2”, первая команда уменьшает число на 1, вторая команда уменьшает число в два раза, если оно чётное, иначе происходит ошибка. Громозека любит, чтобы преобразование происходило как можно быстрее. Помогите Громозеке составить последовательность команд, при которой из большего числа получится меньшее, причем за наименьшее количество команд.

Входные данные
Программа получает на вход два натуральных числа A и (по одному числу в строке). A >= B.

Выходные данные
Выведите последовательность команд преобразования. Каждая команда должна выводиться в отдельной строке. Первая команда обозначается, как -1, вторая команда как :2.
 
 
Примеры
Входные данные Выходные данные
1 21
2
-1
:2
:2
-1
:2
По данному натуральному числу N выведите такое наименьшее целое число k, что \(2^k >= N\).

Входные данные
Программа получает на вход натуральное число N.

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 10 4

По данному числу N распечатайте все целые степени двойки, не превосходящие N, в порядке возрастания. Операцией возведения в степень пользоваться нельзя!



Входные данные
Программа получает на вход натуральное число.

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 30 1 2 4 8 16
Выведите все точные квадраты натуральных чисел, не превосходящие данного числа N.

Входные данные
На вход подается натуральное число N.

Выходные данные
Необходимо вывести  все точные квадраты натуральных чисел, не превосходящие данного числа N. Каждое число - с новой строки.
Поделиться
Класснуть