Intersection Length
Programming Basics · C++
TASK
Problem
In “Intersection Length”, solve the stated coordinate or interval relation using integer comparisons.
EXAMPLE
Example
1 1 3 3
0
LIMITS
Constraints
Coordinate magnitudes are at most 10^9; interval endpoints are given in nondecreasing order.
LEARN
Theory for this problem
+
Coordinate tasks often reduce to comparisons, absolute differences, `min`, and `max`.
Connection to “Intersection Length”: here, intermediate values are best kept in named variables so the formula stays readable and data types remain clear.
NEED HELP?
Hints
+
['Translate the geometry into inequalities before coding.', 'After solving “Intersection Length”, verify the algorithm on your own small example and on an allowed boundary case. Print only the required result with no extra text.']
ANSWER
Solution
+
#include <iostream>
#include <algorithm>
#include <cstdlib>
using namespace std;
int main() {
long long a,b,c,d;
cin >> a >> b >> c >> d;
cout << max(0LL, min(b,d)-max(a,c)) << '\n';
return 0;
}