oj mrJudge
Toggle navigation
  • Login
    • Forget Password
      Login
User Image

Hello, Stranger

Guest
  • Analysis Mode
  • Problems
    • All Problems
    • Latest Problems
  • Join Us Now
  • Registration
  • Contact Us
  • Infomation
  • About
    • Terms of Use
    • Technical Specifications
    • Credits

steeple Batch , stdin/stdout

Registered Users Only

Please login to utilize this feature.

Do note that this website only supports submissions in C++.

steeple.txt

Problem 3: Cow Steeplechase [Brian Dean]

Farmer John has a brilliant idea for the next great spectator sport: Cow
Steeplechase! As everyone knows, regular steeplechase involves a group of
horses that race around a course filled with obstacles they must jump over.
FJ figures the same contest should work with highly-trained cows, as long
as the obstacles are made short enough.

In order to design his course, FJ makes a diagram of all the N (1 <= N <=
250) possible obstacles he could potentially build. Each one is represented
by a line segment in the 2D plane that is parallel to the horizontal or
vertical axis. Obstacle i has distinct endpoints (X1_i, Y1_i) and (X2_i,
Y2_i) (1 <= X1_i, Y1_i, X2_i, Y2_i <= 1,000,000,000). An example is as follows:

   --+-------   
-----+-----
  ---+---     |
     |     |  |
   --+-----+--+-   |
     |     |  |  | |
     |   --+--+--+-+-
           |  |  | |
              |

FJ would like to build as many of these obstacles as possible, subject to
the constraint that no two of them intersect. Starting with the diagram
above, FJ can build 7 obstacles:

   ----------   
-----------
  -------     |
           |  |
           |  |    |
           |  |  | |
           |  |  | |
           |  |  | |
              |

Two segments are said to intersect if they share any point in common, even
an endpoint of one or both of the segments.  FJ is certain that no two
horizontal segments in the original input diagram will intersect, and that
similarly no two vertical segments in the input diagram will intersect.

Please help FJ determine the maximum number of obstacles he can build.

PROBLEM NAME: steeple

INPUT FORMAT:

* Line 1: A single integer: N.

* Lines 2..N+1: Line i+1 contains four space-separated integers
        representing an obstacle: X1_i, Y1_i, X2_i, and Y2_i.

SAMPLE INPUT (file steeple.in):

3
4 5 10 5
6 2 6 12
8 3 8 5

INPUT DETAILS:

There are three potential obstacles. The first is a horizontal segment
connecting (4, 5) to (10, 5); the second and third are vertical segments
connecting (6, 2) to (6, 12) and (8, 3) to (8, 5).

OUTPUT FORMAT:

* Line 1: The maximum number of non-crossing segments FJ can choose.

SAMPLE OUTPUT (file steeple.out):

2

OUTPUT DETAILS:

The optimal solution is to choose both vertical segments.

Tags

USACO Gold Nov 2011, Graph Theory, Bipartite Matching

Subtasks and Limits

Subtask Score #TC Time Memory Scoring
1100101s16MBAverage

Judge Compile Command

g++-8 ans.cpp -o steeple -Wall -Wshadow -static -O2 -lm -m64 -s -w -std=gnu++17 -fmax-errors=512

Accepted Submissions

subIDUserTimeMax Time

Past Submissions

subIDUserTimeScore
mrJudge 09.05.20
Copyright © 2020 mrJudge. All rights reserved.