Summary Files Commits Branches @commit @diff @stats
path: root / src / teaching / upp-2025 / week06 / index.du
diff options
context:
space:
mode:
1 files changed, 94 insertions, 59 deletions
-rw-r--r--src/teaching/upp-2025/week06/index.du153
diff --git a/src/teaching/upp-2025/week06/index.du b/src/teaching/upp-2025/week06/index.du
index a1660f8..dcdd607 100644
--- a/src/teaching/upp-2025/week06/index.du
+++ b/src/teaching/upp-2025/week06/index.du
@@ -1,27 +1,28 @@
-# Задачи - УПП, Седмица 6, 06.11.2025
+'def title Задачи - УПП, Седмица 6, 06.11.2025
+'def desc Условията на задачите за упражнение.
-'define expected-reading 10 min
-'define created 01 November 2025
-'define edited 06 November 2025
-[$pagenav]
+# {title}
-GitHub Classroom: [url https://classroom.github.com/a/JSB1UK_f]
+{pagenav 10 min;01 November 2025;06 November 2025}
+
+GitHub Classroom: {url https://classroom.github.com/a/JSB1UK_f}
## За решаване
### Задача 1
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise01.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise01.cpp}
-През 1837 година, [url https://en.wikipedia.org/wiki/Charles_Babbage Чарлз Бабидж] пита въпроса:
+През 1837 година, {url Чарлз Бабидж;https://en.wikipedia.org/wiki/Charles_Babbage} пита въпроса:
.quote
What is the smallest positive integer whose square ends in the digits 269,696?
Според него това число е 99736 (чиито квадрат е 9947269696).
-Напишете програма, която [=намира=] най-малкото число, отговарящо на въпроса.
+Напишете програма, която {b намира} най-малкото число, отговарящо на въпроса.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -29,14 +30,16 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 25264
+
### Задача 2
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise02.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise02.cpp}
От входа получавате 8 цели положителни числа.
Трябва да изкарате най-голямото общо делимо между всички тези числа.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -50,16 +53,18 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 1
+
### Задача 3
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise03.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise03.cpp}
Получавате цяло положително число.
В него трябва да замените всички срещания на най-срещаната цифра с 0.
Ако има няколко такива цифри, трябва да замените само най голямата от тях.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -88,14 +93,16 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 535035030
+
### Задача 4
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise04.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise04.cpp}
Получавате една редица от 15 цели числа и след това втора редица с 5 цели уникални числа.
Трябва да върнете броя срещания в първата редица на всяко от числата във втората редица.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -106,21 +113,23 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 0 2 7 6 0
+
### Задача 5
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise05.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise05.cpp}
От входа получавате две реални числа: координати на точка в равнината.
Спрямо следното изображение:
-[image ./img/rectangle_and_line.png]
+{img ./img/rectangle_and_line.png}
изкарайте дали точката е в защрихованата област или не.
-Областта [=не=] включва правата и правоъгълника!
+Областта {b не} включва правата и правоъгълника!
Зачитайте, че черните прави отбелязват главните оси, а разстоянията между съседни сиви оси е единица.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -164,12 +173,13 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Inside
+
### Задача 6
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise06.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise06.cpp}
От входа получавате цяло положително число.
-Трябва да върнете дали то е [url https://en.wikipedia.org/wiki/Happy_number щастливо].
+Трябва да върнете дали то е {url щастливо;https://en.wikipedia.org/wiki/Happy_number}.
Нека да вземем нашето число и да го заменим със сумата на всички свои цифри, повдигнати на квадрат.
Оригиналното число е щастливо, ако след краен брой прилагания на тази операция, получим числото 1.
@@ -177,7 +187,8 @@ What is the smallest positive integer whose square ends in the digits 269,696?
Когато число не е щастливо, влизаме в безкрайния цикъл 4, 16, 37, 58, 89, 145, 42, 20, 4, 16, ...
Това е единствения възможен цикъл в който нещастно число може да попадне.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -206,18 +217,20 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Happy
+
### Задача 7
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise07.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise07.cpp}
От входа получавате 6 реални числа.
-Пресметнете съответните 6 [url https://en.wikipedia.org/wiki/Prefix_sum префиксни суми] и ги изкарайте.
+Пресметнете съответните 6 {url префиксни суми;https://en.wikipedia.org/wiki/Prefix_sum} и ги изкарайте.
Това са сумите на всички числа до сега.
Тоест, префиксната сума на второто число е сумата на първото и второто число.
Префиксата сума на третото число е сумата на първото, второто и третото число.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -228,21 +241,23 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 30.86 998.074 1083.07 1598.34 1145.34 1107.55
+
### Задача 8
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise08.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise08.cpp}
От входа получавате две реални числа: координати на точка в равнината.
Спрямо следното изображение:
-[image ./img/two_circles.png]
+{img ./img/two_circles.png}
изкарайте дали точката е в защрихованата област или не.
-Областта [=не=] включва самите окръжности!
+Областта {b не} включва самите окръжности!
Зачитайте, че черните прави отбелязват главните оси, а разстоянията между съседни сиви оси е единица.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -289,14 +304,16 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Outside
+
### Задача 9
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise09.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise09.cpp}
От входа получавате 10 цели числа.
Трябва да върнете дали сред тях същестуват три числа (на различни позиции), чиято сума е равна на 0.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -310,16 +327,18 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Doesn't exist
+
### Задача 10
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise10.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise10.cpp}
От входа получавате четири трицифрени цели неотрицателн числа.
Трябва да върнете най-голямото възможно цяло число, което се получава след "слепване" на тези числа.
-[*Не е нужно да използвате сортиращ алгоритъм!*]
+{i Не е нужно да използвате сортиращ алгоритъм!}
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -333,20 +352,22 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 492382352289
+
### Задача 11
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise11.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise11.cpp}
От входа получавате две реални числа: координати на точка в равнината.
Спрямо следното изображение:
-[image ./img/triangle_and_circle.png]
+{img ./img/triangle_and_circle.png}
-Областта [=не=] включва правата и правоъгълника!
+Областта {b не} включва правата и правоъгълника!
Зачитайте, че черните прави отбелязват главните оси, а разстоянията между съседни сиви оси е единица.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -390,18 +411,20 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Outside
+
## За самоподготовка
### Задача 12
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise12.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise12.cpp}
От входа получавате цяло неотрицателно число.
-Трябва да върнете дали е [url https://en.wikipedia.org/wiki/Sum-product_number число на "сума-произведение"].
+Трябва да върнете дали е {url число на "сума-произведение";https://en.wikipedia.org/wiki/Sum-product_number}.
С други думи, дали е равно на сумата на цифрите си, умножено по умнежнието на цифрите.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -421,14 +444,16 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Not a sum-product number
+
### Задача 13
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise13.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise13.cpp}
От входа получавате цяло положително число.
Трябва да върнете всички негови делители.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -448,19 +473,21 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 1 2 3 4 6 8 9 12 16 18 24 27 32 36 48 54 72 96 108 144 216 288 432 864
+
### Задача 14
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise14.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise14.cpp}
От входа получавате две цели неотрицателни числа.
-Трябва да намерите [url https://en.wikipedia.org/wiki/Tetration тетрацията] на първото числото на степен второто число.
+Трябва да намерите {url тетрацията;https://en.wikipedia.org/wiki/Tetration} на първото числото на степен второто число.
Както нормалното степенуване е повторено умножение, така тетрацията е повторено степенуване.
Число на тетрация "степен" озачава, че числото се повдига на нормална степен себе си, тетрация степен на брой пъти.
Тетрацията расте бързо, използвайте най-големия възможен тип.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -480,16 +507,18 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 16777216
+
### Задача 15
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise15.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise15.cpp}
От входа получавате 8 цели неотрицателни числа.
Трябва да върнете най-малкото общо кратно на всеки две съседни числа.
Най-малко общо кратно е най-малкото число, което се дели без остатък на двете числа.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -500,18 +529,20 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: 12 18 3501 5057 13 26 8
+
### Задача 16
От входа получавате две реални числа: координати на точка в равнината.
Спрямо следното изображение:
-[image ./img/rectangles_and_circle.png]
+{img ./img/rectangles_and_circle.png}
изкарайте дали точката е в защрихованата област или не.
Зачитайте, че всяка сива права отбелязва брой единици разстояние от нулата.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -540,16 +571,18 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Outside
+
### Задача 17
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise17.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise17.cpp}
-От входа получавате две естествени числа, [`a`] и [`b`].
-Трябва да върнете дали [`a`] е [url https://en.wikipedia.org/wiki/Unitary_divisor унитарен делител] на [`b`].
+От входа получавате две естествени числа, {` a} и {` b}.
+Трябва да върнете дали {` a} е {url унитарен делител;https://en.wikipedia.org/wiki/Unitary_divisor} на {` b}.
-Това е изпълнено, когато [`a`] е делител на [`b`] и най-големия общ делител на [`a`] и [`b / a`] е 1.
+Това е изпълнено, когато {` a} е делител на {` b} и най-големия общ делител на {` a} и {` b / a} е 1.
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -569,14 +602,16 @@ What is the smallest positive integer whose square ends in the digits 269,696?
|: Not a unitary divisor
+
### Задача 18
-.solution-link [url https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise18.cpp Решение]
+.solution-link {url Решение;https://github.com/Syndamia/upp-2025-solutions/tree/main/Week06/Exercise18.cpp}
От входа получавате 10 реални числа.
-Трябва да върнете най-голямата възможна сума, получена чрез събиране на колкото и дълга [=последователна=] редица от елементи.
+Трябва да върнете най-голямата възможна сума, получена чрез събиране на колкото и дълга {b последователна} редица от елементи.
-:table_2
+:table
+:2
|= Вход
|= Изход