
Дано два натуральных числа N и M.Написать программу для определения наименьшего из чисел,
составленных из цифр данных чисел. Незначащих нулей в найденном числе быть не должно.Формат входных данных:Входной файл input.txt содержит два натуральных числа N (10 <= N <= 10^100) и M (10 <= M <= 10^100), разделенных одним пробелом.Формат выходных данных:Выходной файл output.txt должен содержать найденное наименьшее число.

Ответы на вопрос

{ сортирует символы строки методом Шелла }
var
i, j, n, step: integer;
c: char;
begin
s := Trim(s);
n := Length(s);
step := n div 2;
while step > 0 do
begin
for j := n - step downto 1 do
begin
i := j;
while i <= n - step do
begin
if s[i] > s[i + step] then
begin
c := s[i];
s[i] := s[i + 1];
s[i + 1] := c
end;
i := i + step
end
end;
step := step div 2
end
end;
procedure TrimNullsLeft(var s: string);
{ Усекает левые (незначащие нули) в строке s }
var
i, n: integer;
begin
i := 1; n := Length(s);
while (s[i] = '0') do i := i + 1;
s := Copy(s, i, n - i + 1)
end;
var
p: integer;
s, M, N: string;
f: text;
begin
Assign(f, 'input.txt');
Reset(f);
Readln(f, s);
Close(f);
Assign(f, 'output.txt');
Rewrite(f);
s := Trim(s);
p := Pos(' ', s);
M := Copy(s, 1, p - 1);
N := Copy(s, p + 1, Length(s) - p);
s := M + N;
ShellStr(s);
TrimNullsLeft(s);
Writeln(f, s);
Close(f);
Writeln('Программа завершила работу')
end.



Для решения этой задачи можно написать программу на любом языке программирования, который поддерживает работу с большими числами. Вот пример решения на Python:
```python def remove_zeros(num): return int(''.join(filter(str.isdigit, num)))
def find_smallest_number(N, M): num1 = str(N) num2 = str(M) smallest_num = min(remove_zeros(num1 + num2), remove_zeros(num2 + num1)) return str(smallest_num)
with open('input.txt', 'r') as file: N, M = map(int, file.readline().split())
smallest_number = find_smallest_number(N, M)
with open('output.txt', 'w') as file: file.write(smallest_number) ```
В этой программе мы считываем числа N и M из файла input.txt, затем объединяем их в разных порядках, удаляем незначащие нули и выбираем наименьшее из полученных чисел. Затем записываем результат в файл output.txt.
Например, если в файле input.txt содержится "102 30", то в файле output.txt будет записано "1023", так как наименьшее число, составленное из цифр 102 и 30, это 1023.


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