я не могу сообразить как мне понять что во втором файле строка добавлена?
Отслеживаем изменения
Считать с консоли 2 пути к файлам - file1, file2.
Файлы содержат строки. Так как file2 является обновленной версией file1, то часть строк совпадает.
Нужно создать объединенную версию строк из обоих файлов и записать эти строки в список lines.
Правила объединения:
Если строка в обоих файлах совпадает, то в результат она попадает с операцией (приставкой) SAME.
Например, SAME строка1.
Если строка есть в file1, но ее нет в file2, то считаем, что строку удалили и в результат она попадает с операцией (приставкой) REMOVED.
Например, REMOVED строка2.
Если строки нет в file1, но она есть в file2, то считаем, что строку добавили и в результат она попадает с операцией (приставкой) ADDED.
Например, ADDED строка0.
Операции ADDED и REMOVED не могут идти подряд, они всегда разделены SAME.
Пустые строки даны в примере для наглядности и означают, что этой строки нет в определенном файле.
В оригинальном и редактируемом файлах пустых строк нет!
Пример 1:
содержимое оригинального файл (file1):
строка1
строка2
строка3
строка4
строка5
строка1
строка2
строка3
строка5
строка0
содержимое "редактированного" файла (file2):
строка1
строка3
строка5
строка0
строка1
строка3
строка4
строка5
результат объединения:
оригинальный редактированный общий
file1: file2: результат:(lines)
строка1 строка1 SAME строка1
строка2 REMOVED строка2
строка3 строка3 SAME строка3
строка4 REMOVED строка4
строка5 строка5 SAME строка5
строка0 ADDED строка0
строка1 строка1 SAME строка1
строка2 REMOVED строка2
строка3 строка3 SAME строка3
строка4 ADDED строка4
строка5 строка5 SAME строка5
строка0 REMOVED строка0
Руслан
16 уровень
Вопрос по задачке
Решен
Комментарии (17)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:03
А как ты определяешь, что строка удалена?
0
Руслан System Administrator в court Expert
28 июля 2021, 11:04
Удалена если в первом файле есть а во втором нет,
порядок первого файла идет стабилен,
Но как определить если добавлена ?
0
Руслан System Administrator в court Expert
28 июля 2021, 11:05
ведь можно посмотреть и так
если в первом файле есть а во втором нет - можно понять по разному это может касаться и одного и второго варианта
0
Руслан System Administrator в court Expert
28 июля 2021, 11:07
Например : где из них добавлено а где удалено ???
s h
d d
b g
x s
0
Руслан System Administrator в court Expert
28 июля 2021, 11:08
не понимаю
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:08
А как ты проверяешь, есть строка или нет?
Вот в примере "строка 4" есть в обоих файлах. Но она не SAME.
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:09
Таких файлов не может быть по условию. Потому что они не подходят под:
Операции ADDED и REMOVED не могут идти подряд, они всегда разделены SAME.
0
Руслан System Administrator в court Expert
28 июля 2021, 11:11
блин не понимаю.
0
Руслан System Administrator в court Expert
28 июля 2021, 11:13
как различить
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:16
Думай.
Файл 1
Файл 2
Как можно определить что в начале файла "строка 0" была добавлена?
Как можно определить что в конце "строка 0" была удалена? 0
Руслан System Administrator в court Expert
28 июля 2021, 11:22
и там и там
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:24
Я не про код сейчас вообще.
Вот ты когда своими глазами смотришь на эти файлы - ты можешь понять, что во 2-м файле в начале строка добавлена, а в конце удалена?
Как ты, человек, об этом догадываешься?
0
Руслан System Administrator в court Expert
28 июля 2021, 11:26
просто вижу что единица стоит дальше
а в конце еще есть линия Файл1 а второй кончился
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:29
просто вижу что единица стоит дальше
Ну вот. Твоя программа тоже может посмотреть, что там дальше...
0
Руслан System Administrator в court Expert
28 июля 2021, 11:31
но мы не узнаем пока не прочтем. Верно?
0
Ksenia Volkova Java Developer в DXC Master
28 июля 2021, 11:32
Очевидно. Поэтому проще сначала считать все строки из обоих файлов, а потом уже сравнивать.
0
Руслан System Administrator в court Expert
28 июля 2021, 11:34
ну как бы и понял ну и как бы в голове не лежит сейчас буду складывать этот пазл спасибки тебе за помощь.
0