HHullspring
AI 코딩 작업 공간

정수 좌표의 볼록 껍질

최대 1000개 정수 점에서 사전순 최소점을 시작으로 반시계 방향 볼록 껍질을 만드세요.

● ● ●Hullspring●
작업 흐름 · 정수 좌표의 볼록 껍질 ×
def convex_hull(points):
    if type(points) is not list or len(points) > 1000:
        raise ValueError("hull.input")
    if any(type(p) not in (tuple, list) or len(p) != 2 or
           any(type(v) is not int for v in p) for p in points):
        raise ValueError("hull.point")
    ordered = sorted(set(map(tuple, points)))
    if len(ordered) <= 1:
        return ordered
    def turn(a,b,c):
        return (b[0]-a[0])*(c[1]-a[1])-(b[1]-a[1])*(c[0]-a[0])
    def chain(sequence):
        out = []
        for p in sequence:
            while len(out) >= 2 and turn(out[-2],out[-1],p) <= 0:
                out.pop()
            out.append(p)
        return out
    return chain(ordered)[:-1]+chain(reversed(ordered))[:-1]
✳정수 좌표의 볼록 껍질
✓ 변경 사항적용하기 전에 검토하세요 ↗
작업 공간 예시 화면
프로젝트
빈 입력과 중복 및 일직선 점을 시험하고 가장 바깥 끝점만 남기며 소수 좌표를 거부하세요.
적용하기 전에 검토하세요
실제 동작을 예상 결과와 비교하세요. 검사가 실패하면 다음 변경을 하기 전에 원인을 조사하세요.
모델
기본 URL과 필요한 API 키로 OpenAI 호환 또는 Anthropic 엔드포인트를 설정하고 연결을 테스트하세요. 로컬 모델 서버는 실행 중이어야 합니다. 원격 도구는 데이터를 별도로 전송할 수 있습니다.
작업 흐름

정수 좌표의 볼록 껍질

작업 흐름 ↗
작업 흐름
def convex_hull(points):
    if type(points) is not list or len(points) > 1000:
        raise ValueError("hull.input")
    if any(type(p) not in (tuple, list) or len(p) != 2 or
           any(type(v) is not int for v in p) for p in points):
        raise ValueError("hull.point")
    ordered = sorted(set(map(tuple, points)))
    if len(ordered) <= 1:
        return ordered
    def turn(a,b,c):
        return (b[0]-a[0])*(c[1]-a[1])-(b[1]-a[1])*(c[0]-a[0])
    def chain(sequence):
        out = []
        for p in sequence:
            while len(out) >= 2 and turn(out[-2],out[-1],p) <= 0:
                out.pop()
            out.append(p)
        return out
    return chain(ordered)[:-1]+chain(reversed(ordered))[:-1]
AI 코딩 작업 공간

기하 코드 변경을 사용하는 애플리케이션과 연결하세요

필요한 출력을 애플리케이션의 관점으로 명시하면 기하 코드를 검토하기 쉬워집니다. Hullspring은 프로젝트를 열어 둔 채 그 요구 사항을 검토하는 Windows용 AI 코딩 작업 공간입니다. 제안이 공식을 재배열하는 데 그치지 않고 실제 동작에 답하도록 수정 전에 관련 계산과 이를 사용하는 코드를 살펴보도록 연결된 모델에 요청하세요.

예를 들어 선택 도구가 점 집합을 둘러싼 외곽 경계를 사용할 수 있습니다. 중복점과 일직선상의 점이 그 경계에 미치는 영향을 검토하도록 요청하고 변 위의 중간 점을 결과에 포함할지 설명하세요. 렌더링 호출 코드와 대표 테스트 데이터를 포함하세요. 이는 Hullspring에 선택 도구가 내장되어 있다고 가정하지 않으면서 구체적인 작업을 제시하는 방법입니다.

일반적인 도형뿐 아니라 출력 순서, 입력 검증, 빈 입력의 경우도 패치에서 검토하세요. 일직선상의 점, 반복된 좌표, 작은 다각형으로 프로젝트를 실행하세요. 반환 시퀀스를 사용하는 코드의 기대와 비교하세요. 기하학적으로 올바른 집합이라도 순서나 닫힘 규칙이 다르면 잘못 표시될 수 있습니다.

Hullspring은 OpenAI 호환 또는 Anthropic 엔드포인트를 통한 모델 연결을 지원합니다. 제공되는 경우 거부 성향 제거(abliterated) AI 모델을 선택할 수 있지만 제한, 컨텍스트 용량, 도구는 해당 서비스가 결정합니다. 대화로 구현 선택을 명확히 하고 프로젝트 자체의 테스트 데이터에 근거해 검증하세요.

기하 코드 유지보수 요청 준비

일직선상의 변 위 점을 경계에 남겨야 하나요?

결과를 사용하는 코드의 요구 사항을 명시하세요. 극점만 필요한 경우도 있고 중간 점을 유지해야 하는 경우도 있습니다. 현재 규칙을 살펴보고 정책 변경을 제안과 테스트에 명시하도록 모델에 요청하세요.

계산 검토에 렌더링 코드를 왜 포함하나요?

특정 순회 순서나 닫는 꼭짓점의 반복을 기대할 수 있기 때문입니다. 계산이 의도한 점을 반환해도 그 인터페이스를 어길 수 있습니다. 사용하는 코드를 살펴보면 국소적인 수정으로 화면에 회귀 문제가 생기는 것을 예방할 수 있습니다.

가정을 빠르게 드러내는 테스트 데이터는 무엇인가요?

빈 집합, 점 하나, 중복점, 직선, 내부 점이 있는 작은 다각형을 사용하세요. 각각의 예상 출력 규칙을 작성하세요. 그려진 도형에만 의존하지 말고 프로젝트에서 실행하세요.

패치에서 허용 좌표 형식이 부수적으로 넓어져도 되나요?

별도의 계약 변경으로 다루세요. 수치 표현이 달라지면 비교와 검증에 영향을 줄 수 있습니다. 한정된 기하 코드 수정에 포함해 수용하기 전에 확장이 필요한 이유를 묻고 호출 코드를 확인하세요.

Windows용 다운로드 ↗

Hullspring · 업데이트 2026-10-25