미사일 요격 (안 긴 순서가 상승하지 않음)

겉으로 폭력 열거 폭력은 실제로 열거 타이틀 (욕심을 조금 추가)된다

주제 :

후  11 모든 거리를 가로 챌 성공적으로 할 수있는 미사일의 작업 반경을 초과하지 않는로 올해는 낮은 프로파일을 유지, 국가는 새로운 미사일 요격 시스템을 개발했다. 작업 반경의 경우  0 0, 다음이 가능 똑같은 위치는 미사일을 차단하도록한다. 그러나, 미사일 요격 시스템은 또한 단점이있다 : 각 시스템은 반경 작업을 하루에 한 번 설정할 수 있습니다. 하루 사용 비용은 작업 및 모든 시스템의 반지름의 제곱입니다.

어느 날, 레이더 들어오는 적의 미사일을 집어 들었다. 시스템이 실험 단계에 아직도 있기 때문에, 그래서 단지 두 시스템이 작동합니다. 현재의 요구 사항은 모든 미사일을 요격하는 경우, 그 날의 최소의 비용을 계산하는 데 사용하십시오.

최대 데이터 범위 :

데이터, 1≤N≤100000, 모든 구성 요소의 절대 좌표의 100 %가 1000을 초과하지

 

 

우선, 제곱의 차이를 조정하고 직접 저장 될 수있는 데이터 방송의 제목 및 범위를 참조한다 (즉, 두 점 화학식 사이의 거리의 제곱)의 폭발 아니지만, 단지 좌표를 저장하지 않고, 거리와 두 차단 시스템을 저장한다.

둘째, 다음, 정확성을 보장하지 않습니다 최근 사용에서이 미사일을 고려하다 두 점 사이의 거리, 비교 시점의 깎아 지른듯한 거리 주어진 알고리즘 문제를 고려

지점이 가까이에서, 그러나 미사일을 포함 차단의 관점에서 미사일 1이있을 수 있습니다 아마도 때문에, 2 가로 채기는 점 범위를 업데이트 할 필요가 없습니다

다음 제언을 고려한다

차단 시스템의 제 1 세트로부터의 거리에 따라 분류하면, 제 시스템의 범위를 전면 K 점을 차단하도록 제 k 점의 거리를 가로 챌 수 있도록 단거리 내지 제 K 점 때문에

그런 점 점, 최대 값을 복용의 두 번째 차단에서 위의 과정에서 열거 프로세스는, 그렇지 않으면 모든 지점을 차단하는 것은 불가능합니다

코드 :

#INCLUDE <비트 / stdc ++ H.>
 사용  스페이스 성병;
INT의 N;
구조체 노드 {
     INT의 DF, DS; 
    노드 () { 
        DF = 0 ; 
        DS = 0 ; 
    } 
} ND [ 100005 ];
구조체 알 {
     INT의 X, Y; 
} Fi 접속 (SC); 
인라인 부울 CMP ( CONST 노드 A, CONST 노드 b) {
     복귀 a.df < b.df; 
} 
인라인 의 INT DIS를 ( BOOL NUM,CONST의  INT 및 X, CONST의  INTY) {
     경우 (! NUM)
          (X-fi.x) * (X-fi.x) + (Y-fi.y) * (Y- fi.y);
    경우 (NUM)
          (X-sc.x) * (X-sc.x) + (Y-sc.y) * (Y- sc.y); 
} 
INT 의 main () { 
    는 scanf ( " % D % D % D % D " , fi.x, fi.y, sc.x, sc.y); 
    scanf와 ( " %의 D ' , N);
    위한 ( int로 I = 1 ; i가 <= N; 내가 ++ ) {
         int로 를 B; 
        scanf와 (" % d 개 %의 D ' , A, 및 B); 
        ND [I] .df = DIS ( 0 , A, B); 
        ND [I]의 .DS =의 DIS ( 1 , A, B); 
    } 
    정렬 (ND + 1 , ND + 1 + N, CMP);
    int로 I = N;
    INT ANS = 2147483647 ; INT maxn = 0 ;
    동안 은 (i> = 1 ) { 
        maxn = 최대 (maxn, ND [I + 1 ] .DS); 
        ANS = 분 (ND [I] + .df maxn, ANS);  - ;
    }의 printf ( " % D \ 없음 " , ANS);
    반환  0 ; 
}

 

추천

출처www.cnblogs.com/648-233/p/11030952.html