Написать программу определения количества шестизначных «счастливых» билетов, у которых сумма первых 3 десятичных цифр
Ответы на вопрос:
1) Самое простое - это перебрать все возможные комбинации шести цифр и подсчитать число "счастливых" билетов.
Count:=0; {количество "счастливых" билетов}
for a1:=0 to 9 do
for a2:=0 to 9 do
for a3:=0 to 9 do
for a4:=0 to 9 do
for a5:=0 to 9 do
for a6:=0 to 9 do
if a1+a2+a3=a4+a5+a6
then Count:=Count+1;
или следующий вариант:
Count:=0;
for t:=0 to 999999 do begin
a1:=t div 100000;
a2:=t div 10000 mod 10;
a3:=t div 1000 mod 10;
a4:=t div 100 mod 10;
a5:=t div 10 mod 10;
a6:=t mod 10;
if a1+a2+a3=a4+a5+a6 then count:=count+1;
end;
Условие if во вложенных циклах будет проверяться 10^6 раз, поэтому будем говорить, что сложность этих алгоритмов 10^6.
2) Обратим внимание на то, что в "счастливом" билете последняя цифра a6 однозначно определяется первыми пятью:
a6=(a1+a2+a3)-(a4+a5).
Если 0<=a6<=9, то билет "счастливый", иначе - нет. Таким образом, мы можем убрать шестой вложенный цикл:
Count:=0;
for a1:=0 to 9 do
for a2:=0 to 9 do
for a3:=0 to 9 do
for a4:=0 to 9 do
for a5:=0 to 9 do
begin
a6:=(a1+a2+a3)-(a4+a5);
if (a6>=0) and (a6<=9)
then Count:=Count+1;
end;
Сложность алгоритма 10^5.
3) Если комбинаций a1 a2 a3 первых трех цифр с суммой T=a1+a2+a3 насчитывается C[T], то всего "счастливых" билетов с суммой половины T=a1+a2+a3=a4+a5+a6 будет C[T]*C[T]. Всех возможных сумм T-28 (от 0=0+0+0 до 27=9+9+9). Подсчитаем C[i], i=0, ..., 28, затем найдем интересующее нас количество "счастливых" билетов
C[0]2 + C[1]2 + ... + C[27]^2.
Заметим, что "счастливых" билетов с суммой T столько же, сколько и с суммой 27-T. Действительно, если билет a1 a2 a3 a4 a5 a6 с суммой T - "счастливый", то таковым же является и билет (999999 - a1 a2 a3 a4 a5 a6) с суммой 27-T. Поэтому число билетов можно вычислять и по формуле
2*(C[0]2+ ... +C[13]2),
т.е.рассматривать только суммы T от 0 до 13.
Count:=0;
for T:=0 to 13 do C[T]:=0;
for a1:=0 to 9 do {перебираем все}
for a2:=0 to 9 do {возможные a1 a2 a3}
for a3:=0 to 9 do
begin
T:=a1+a2+a3;
C[T]:=C[T]+1 {нашли еще один билет}
end; {с суммой T}
for T:=0 to 13 do {считаем число билетов} Count:=Count+C[T]*C[T];
Count:=Count*2; {удваиваем сумму}
или следующий вариант
count:=0;
for t:=0 to 27 do c[t]:=0;
for t:=0 to 999 do begin
a1:=t div 100;
a2:=t div 10 mod 10;
a3:=t mod 10;
c[a1+a2+a3]:=c[a1+a2+a3]+1;
end;
for t:=0 to 27 do count:=count+c[t]*c[t];
Сложность этих алгоритмов 10^3.
разминки футболистов
БЕГОВЫЕ УПРАЖНЕНИЯ:
1. Обычная пробежка от боковой до боковой линии и обратно.
2. Пробежка приставным шагом от боковой до боковой линии. Сначала левым боком, а затем правым.
3. Беговые упражнения "захлест голени" (доставание пятками до ягодиц) и "высокое бедро", выполняется в таком порядке: десять отрезков-"захлест голени", далее пять отрезков-обычный бег, и затем десять отрезков-"высокое бедро"
УПРАЖНЕНИЯ НА ГИБКОСТЬ:
1. Исходное положение-основная стойка: ноги на ширине плеч, руки опущены. Сделать широкий выпад вперед правой ногой, сильно согнуть тело и наклонить вперед, выпрямить коленный сустав левой ноги, находящийся сзади. Удерживать эту позу в течении 20 секунд. Вернуться в исходное положение и проделать данное упражнения, но уже с левой ногой.
2. Исходное положение-ноги на ширине плеч, руки на поясе. 8-10 круговых движений головой в одну сторону, затем в другую.
3. Выполнять движение "мельница" (при данном упражнении ноги, желательно, расставлять как можно шире.
4. Упражнение "велосипед". Исходное положение-в упоре лежа на носках стопы и на прямых руках. С носка встать на пятку с пятки на носок попеременно, то левой, то правой ногой, как при низком старте.
5. Отжимания.
6. Наклоны в стороны.
БЕГОВЫЕ УПРАЖНЕНИЯ:
Все беговые упражнения делаются в среднем темпе
1.Пробежка от боковой до боковой линии скрестным шагом. Возвращаясь на исходную позицию, выполнить бег спиной вперед.
2. Выполнить ритмическую пробежку: два шага влево и вперед, два шага вправо и вперед.
3. Бег лицом вперед от боковой до боковой линии, быстрый разворот на 360 градусов через левое плечо, произвольный бег, разворот на 360 градусов через правое плечо, произвольный бег.
БЕГОВЫЕ УПРАЖНЕНИЯ (2):
Дистанция для беговых упражнений около 15 метров. На расстоянии 1-1.5 метров от старта в ряд ставятся 10 фишек. Задача-как можно быстрее пробежать между фишками различными Скорость выполнения МАКСИМАЛЬНАЯ.
1. Ритмическими движениями-два шага влево, два шага вправо обойти все фишки и сделать ускорение на 2 метра.
2. Спиной вперед. Два шага влево, два шага вправо обойти все фишки, повернуться, и сделать ускорение на 2 метра.
3. Левым боком. Ритмическими движениями впрерд-назад, обежать все фишки, повернуться лицом и сделать ускорение на 2 метра.
4. См. 3, но уже правым боком.
5. Обычный бег с перешагиванием каждой фишки, высоком поднимании бедра.
После каждого бегового упражнения отдых 30-40 секунд
УПРАЖНЕНИЯ С МЯЧОМ:
1. Передача мяча в парах, передача мяча в два касания, передача мяча в одно касание. На данное упражнения отводится около 1 минуты.
2. Игра в квадрат. Около 5 минут.
УДАРЫ В ВОРОТА:
1. Участвуют нападающие и полузащитники-у каждого по мячу. Футболисты встают в 15 метров от линии штрафной площади. Игрок ведет мяч на скорости до линии штрафной и наносит удар. Каждый игрок должен сделать около 5 ударов.
2. Защитники выполняют в парах средние и длинные передачи на расстоянии 15-20 метров друг от друга.
Данную разминку стоит производить непосредственно перед матчем.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
kidsers2017Milllooo05.02.2021 21:48
-
отличница47407.03.2020 04:40
-
andreevigor20031.08.2020 06:17
-
ndiana240213.11.2020 05:21
-
а6пг25.01.2020 03:55
-
shitovilya25.01.2022 10:46
-
raxmatullin17421.03.2023 00:34
-
XWaeRr01.03.2022 22:07
-
mailnadejda16.03.2023 09:10
-
NargizzaErbolat01.07.2022 00:12
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.