Цифры во втором и третьем столбцах указывают диапазон. Я хочу, чтобы (если число в первом столбце одинаковое), чтобы рассчитать перекрывающиеся области и вычислить, сколько в диапазоне получено или потеряно, как определено числом справа (+1 = один полученный, -1 = один потерян). Например, если у меня естьРасчет прибылей и убытков областей перекрывающихся номеров
1 0 300 +2
1 100 200 -1
2 100 200 -1
Это означает, что я на самом деле есть
1 0 100 +2
1 100 200 +1
1 200 300 +2
2 100 200 -1
потому 1 100 200
перекрывается с 1 0 300
создания 0 100 +2
, 100 200 +1
и 200 300 +2
но 2 100 200
не имеет перекрытий и просто печатает 2 100 200 -1
Пример ввода
1 0 5000 +1
1 100 400 -1
1 300 500 +2
1 1000 1200 +3
1 1000 1100 -2
1 0 50 -1
ожидаемый результат
1 50 100 +1
1 300 400 +1
1 400 500 +3
1 1000 1100 -1
1 1100 1200 +2
1 1200 5000 +1
Своего рода псевдокод для того, как сделать это было бы неплохо
Но языки, которые будут работать для меня являются Баш, Perl, AWK или СЭД
Вы написали что-нибудь? – codeforester
@codeforester У меня нет я не могу думать о том, как я могу манипулировать цифрами, чтобы сделать это – Jacob
Почему 300 - 400 «+1»? Я получаю +2. – choroba