e-olymp 8841. Цифра 2

Условие задачи:

На входе программы имеется натуральное число [latex]n (n > 9)[/latex]. Нужно вывести предпоследнюю справа цифру (разряд десятков) числа [latex]n[/latex].

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

Натуральное число [latex] n (n > 9) [/latex].

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

Цифра разряда десятков числа [latex] n [/latex].

Тесты:

 

Входные данные Выходные данные
1 10 1
2 197 9
3 4638 3
4 72410 1
5 6543732 3

 

Код программы

Решение:

Идея данного решения заключается в том, чтобы с помощью целочисленного деления числа [latex]n (n > 9)[/latex] на 10 избавиться от последней цифры в числе [latex]n[/latex]. Затем вычисляем остаток от деления для того, чтобы осталась последняя цифра полученного числа, которая и является предпоследней цифрой справа (разряд десятков) в числе [latex]n[/latex].

Ссылки:

Задача на e-olymp

Решение задачи на ideone

Засчитанное решение на e-olymp

Related Images:

e-olymp 8283. Музыка

Задача

Малыши и малышки очень любили музыку, а Гусля был замечательный музыкант. У него были разные музыкальные инструменты, и он часто играл на них. Их было много, поэтому он развесил их на стенах своей комнаты. Инструмент, расположенный справа от входной двери имел номер $1$, дальше они нумеровались по кругу, а последний инструмент с номером $n$ висел слева от этой двери.

Малыши часто просили его научить играть на каком-нибудь инструменте. Гусля не отказывал, но сначала предлагал взять инструмент с первым номером, а если ученику хотелось играть на другом, то он выбирал шестой следующий по кругу и так далее. Напишите программу, которая определяла номер попытки, с которой ученик мог получить желаемый инструмент с номером $k$.

Например, если количество инструментов $n = 11$, то последовательность будет следующей: $(1) 2 3 4 5 6 (7) 8 9 10 11 1 (2) 3 4 5 6 7 (8) 9 10 11 1 2 (3) 4 5$ …, то есть при $k = 3$ инструмент с номером $3$ можно было бы получить с пятой попытки.

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

Два натуральных числа $n$ и $k$ $(1 \leqslant k \leqslant n \leqslant 100)$.

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

Вывести номер попытки, в который «выпадал» инструмент с номером $k$. Если это никогда не происходило, следует вывести $0$.

Тесты

Входные данные Выходные данные
1 11 3 5
2 6 2 0
3 13 13 3
4 9 8 0
5 5 5 5

Код

Решение

Для решения задачи нам необходимо рассмотреть ряд натуральных чисел, начиная с единицы и прибавляя каждый раз $6$. С помощью операции деления с остатком мы можем реализовать алгоритм нахождения номера музыкального инструмента. Однако логика решения изменяется в зависимости от введенных пользователем данных. Имеется два случая:

  1. Если пользователь вводит разные числа.
  2. Если пользователь вводит одинаковые числа.

В первом случае мы рассматриваем две ситуации:
1) если пользователь вводит количество инструментов $6$, то единственным решением будет инструмент под номером $1$, так как Гусля выбирает инструменты через $6$ штук по кругу;
2) если количество инструментов не равно $6$ то мы реализовываем алгоритм нахождения номера путем деления с остатком, а именно: если текущее число при делении на количество инструментов не дает в остатке искомый номер, мы прибавляем $1$ к числу попыток, а число увеличиваем на $6$, в противном случае мы нашли число попыток.
Еще здесь, так же, как и во втором случае, есть подводный камень: если мы уже сделали какое-то количество попыток и текущее число при делении на количество инструментов дает в остатке $1$, мы никогда не попадем на нужный нам номер инструмента.

Во втором случае мы также рассматриваем две ситуации:
1) если количество инструментов делится нацело на $2$, то нам никогда не выпадет нужный инструмент;
2) если текущее число при делении на количество инструментов не дает в остатке $0$, мы прибавляем $1$ к числу попыток, а число увеличиваем на $6$, в противном случае ответ найден.
Также не забываем про подводный камень, указанный выше.

Ссылки

  • Условие задачи на e-olymp
  • Код программы на ideone.com
  • Засчитанное решение на e-olymp

Related Images:

e-olymp 8842. Цифра 3

Условие задачи:

На входе программы имеется натуральное число  [latex] n (n > 99) [/latex]. Нужно вывести третью цифру (разряд сотен) числа [latex] n [/latex].

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

Натуральное число  [latex] n (n > 99) [/latex].

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

Цифра разряда сотен числа [latex] n [/latex].

Тесты:

 

Ввод Вывод
1 512 5
2 7826 8
3 90285 2
4 12479056 0
5 18942793357 3

Код программы:

Решение:

Для нахождения третьей цифры с конца данного числа, выполним ряд следующих действий:

  • разделим данное натуральное число на [latex] 100 [/latex] и получаем количество сотен в числе: либо однозначное число (цифру), либо многозначное;
  • так как мы хотим получить простую сотню (однозначное число), мы находим остаток от полученного числа при делении на [latex] 10 [/latex].

Ссылки:

Задача на E-Olymp

Решение задачи на ideone

Засчитанное решение на E-Olymp

Related Images:

e-olymp 8678. Birches

Task

The State National Park $Q$ recently acquired a beautiful birch avenue consisting of $n$ trees. Each tree has a height of $H_i$.

International Classification of national parks is a list of the most beautiful nature reserves in the world. Used to rank parks such a thing as $distinctiveness$ which is understood as the number of pairs ($i$, $j$), for which the observed ratio of $H_i$ $mod$ $H_j$ = $k$, where $k$ is a special number, which is selected by the Expert Council of the international organization of national parks.

What $distinctiveness$ has national park state $Q$?

Input

The first line has two positive integers $n$ and $k$ [latex]\left(1\leqslant n\leqslant 10^5, 0\leqslant k\leqslant 10^6\right)[/latex] — the number of trees in the national park and a special number of the advisory council, respectively.

The second line has $n$ numbers $H_i$ [latex]\left(1\leqslant H_i\leqslant 10^6\right)[/latex] — the height of the trees in the park.

Output

In the single line print $Q$ national park $distinctiveness$.

Tests

Input Output

1

5 1

1 2 3 4 5

8

2

6 2

2 6 7 8 10 14

8

3

15 6

1 4 5 6 9 13 15 16 19 20 2124 27 45 49

14

4

7 3

1 5 7 8 9 23 46

2

5

10 15

23 26 67 79 82 110 118 200 450 900

2

Program code

Solution

To solve this problem, we will count the number of identical elements, while entering the array. Next, if $i$ and $j$ were met more than $0$ times and $i$ is not equal $j$, we add the counter x + = cnt [j] * cnt [i], and if $i$ = $j$ — x + = cnt [i] * (cnt [i] - 1).

Links

Related Images:

e-olymp 1623. Чётные и нечётные числа

Задача

Дано три целых числа $a$, $b$, $c$. Определить, есть ли среди них хотя бы одно чётное и хотя бы одно нечётное число.

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

Числа $a$, $b$, $c$, не превышающие по модулю $10000$ (числа могут быть отрицательными).

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

Вывести «YES» или «NO».

Тесты

# Входные данные Выходные данные
1 3 4 5 YES
2 7 7 7 NO
3 2 3 50 YES
4 -1 -3 5 NO
5 10 5 -2 YES

Код решения

Решение

Проверяем, есть ли среди введенных чисел хотя бы одно четное и хотя бы одно нечетное. При выполнении обоих условий, выводим «YES», в другом случае «NO».

Related Images:

e-olymp 4717. Дележ яблок — 2

Задача

$n$ школьников делят $k$ яблок поровну, не делящийся остаток остаётся в корзинке. Сколько яблок останется в корзинке?

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

Два положительных целых числа $n$ и $k$, не больших 1500.

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

Вывести количество яблок, которое останется в корзинке.

Тесты

Входные данные Выходные данные
200 300 100
1500 1500 0
30 600 0
12 15 3
152 1432 64

Код программы

Решение

Ответом является остаток от деления $k$ на $n$.

e-olymp

ideone

Related Images:

e-olymp 8522. Делимость

Задача

Заданы два натуральных числа $a$ и $b$. Проверьте, делится ли $a$ на $b$.

Входные данные: Два натуральных числа $a$ и $b$ $(1 \le a, b \le 10^9)$

Выходные данные: Если $a$ не делится на $b$ нацело, вывести в одной строке частное и остаток от деления $a$ на $b$. Иначе вывести "Divisible".

Тесты

$a$ $b$ Вывод программы
15 3 Divisible
12 7 1 5
15 23 0 15
1000000000 889879 1123 665883

Continue reading

Related Images:

e-olymp 939. Квадрат суммы

Задача взята с сайта e-olimp.

Задача

Найти квадрат суммы цифр двузначного натурального числа.

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

Одно натуральное двузначное число.

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

Квадрат суммы цифр заданного числа.

Тесты

#

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

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

1

23

25

2

25

49

3

36

81

4

60

36

5

99

324

Код

Решение

Разобьем двузначное натуральное число [latex] n [/latex]  на два числа, содержащих соответственно его первую цифру  ( [latex] c_1 [/latex] ) и вторую — ( [latex] c_2 [/latex] ), где  [latex] c_2 = n \mod 10[/latex], в то время как [latex] c_1 = \frac {n} {10} [/latex]. Теперь, чтобы получить квадрат суммы цифр двузначного натурального числа, сложим два эти числа и умножим еще раз на их сумму [latex] (c_2 + c_1) \cdot (c_2 + c_1) [/latex].

Ссылки

ideone

e-olymp

Related Images: