В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
женя1362
женя1362
26.02.2021 15:24 •  Информатика

Все натуральные числа от 1 до n записаны подряд слева направо: . сколько существует вычеркнуть все цифры полученного числа, кроме четырёх, чтобы оставшиеся цифры образовали (без перестановок) число 2013?

Показать ответ
Ответ:
missapikova
missapikova
04.10.2020 09:42
//То чувство, когда 2 часа работал над оптимизацией, а в итоге работает быстрее вариант, который писал 5 минут.
//PascalABC.NET 3.2 сборка 1318

Var
  i,j,k,m,n,count:integer;
  s,s1:string;
begin
  readln(n);
for i:=1 to n do
  s+=inttostr(i);
for i:=1 to length(s) do
if (s[i]='2') or (s[i]='0') or (s[i]='1') or (s[i]='3') then s1+=s[i];
s:=s1;
for i:=1 to length(s) do
  if  s[i]='2' then
    for j:=i+1 to length(s) do
      if s[j]='0' then
        for k:=j+1 to length(s) do
          if s[k]='1' then
            for m:=k+1 to length(s) do
              if  s[m]='3' then inc(count);
writeln(count);
end.

Пример ввода:
500
Пример вывода:
23760240
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота