질문의 네 가지 범주로 동적 프로그래밍 문제는 포병 라인업 / 이진 검색 트리 / 수집 기쁨 / 01 배낭 / 그룹 배낭 / 착유 (더 Xianshui 수) (단지 자신의 바이두의 상태 전이 방정식, AC 코드를 분석) ② 총 분석을 엉망진창

포병 라인업

문제 설명

명령 장군은 NM의 격자지도에 자신의 대포를 배포 할 계획입니다. 아래와 같이 NM은 N 행 M 열의 구성된 맵은 각 셀 ( "H"로 표시됨) 산의지도 일 수 있으며, 그것은 보통 일 수있다 ( "P"로 표시). 그것은 최대 일반 지형 포병 (산에 대포를 배포 할 수 없습니다)에 각 셀에 배치 할 수 있으며, 검은 색 영역 다음과 같이지도에 범위 포격 :

좌우 측면을 따라 프레임마다 두 개의 셀을 상하 길이 방향 : 포병 일반 그레이 맵의 배치가 확인되면,도 공격 할 수있는 영역에 블랙 그리드를 나타낸다. 그림은 다른 흰색 격자를 공격하지 않았다. 지도에서 지형의 범위에 대 포병 공격의 눈에 보이는 효과.
이제, 장성 실수로 부상을 방지하는 전제하에, 포병을 배포하는 방법을 계획하고지도를 통해 (두 포병 유닛 사이에 서로를 공격하지 보장, 즉 어느 한 포병 유닛은 공격 다른 포병 지원의 범위 내에 있지 않은) 육군의 포병 유닛의 최대 수는 지역에 배치 할 수 있습니다.

입력
상기 제 1 라인은 각각 이격 공간, M 및 N에 의해 분리 된 두 개의 양의 정수 포함
다음 N 열의 각 행 공백없이 M 연속 문자 ( 'P'또는 'H')을 포함한다. 각 라인의지도를 나타내는 주문 데이터입니다. N <= 100, M <= 10.
수출

하나 개의 라인은 포병의 배치에 번호를 나타내며, 정수 K가 포함되어 있습니다.

견본

    • 입력
      4 5
      phpp의
      PPHH
      PPPP
      phpp의
      PHHP
    • 출력
      (6)

 

추천

출처www.cnblogs.com/likeghee/p/11750064.html