---
id: LC
title: "LineContainer"
author: Benjamin Qi
description: Convex Containers
prerequisites: 
 - Platinum - Convex Hull
frequency: 1
---

import { Problem } from "../models";

export const metadata = {
  problems: {
    sample: [
      new Problem("YS", "Line Add Get Min", "line_add_get_min", "Normal", false, [], ""),
    ],
    half: [
      new Problem("Kattis", "Marshland Rescues", "https://maps19.kattis.com/problems/marshlandrescues", "Normal", false, [], ""),
    ],
    probs: [
      new Problem("YS", "Segment Add Get Min", "segment_add_get_min", "Normal", false, [], ""),
      new Problem("CSA", "Building Bridges", "building-bridges", "Normal", false, [], ""),
      new Problem("TOKI", "Mall & Transportation", "https://tlx.toki.id/contests/troc-13-div-1/problems/D", "Very Hard", false, [], ""),
      new Problem("Old Gold", "Fencing the Herd", "534", "Very Hard", false, [], ""),
    ]
  }
};

## Half-Plane Intersection

<resources>
  <resource source="CF" title="Blogewoosh - Half-Plane Intersection w/ Ternary Search" url="blog/entry/61710" starred></resource>
  <resource source="Petr" title="Linear Half-Plane Intersection" url="https://petr-mitrichev.blogspot.com/2016/07/a-half-plane-week.html" starred>expected linear!</resource>
</resources>

<problems-list problems={metadata.problems.half} />

## LineContainer

<problems-list problems={metadata.problems.sample} />

<resources>
  <resource source="KACTL" title="LineContainer" url="https://github.com/kth-competitive-programming/kactl/blob/master/content/data-structures/LineContainer.h" starred>code</resource>
  <resource source="cp-algo" title="Lichao Tree" url="geometry/convex_hull_trick.html" starred> </resource>
  <resource source="CF" title="retrograd - Half-Plane Set" url="blog/entry/61710?#comment-457662">code</resource>
</resources>

## Problems

<problems-list problems={metadata.problems.probs} />

https://atcoder.jp/contests/arc066/tasks/arc066_d