아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

차로별 진로 안내

시간 제한2초메모리 제한1024 MB

요약
m개 방향의 공집합이 아닌 부분집합을 n개 차선에 배정하되, 차선이 왼쪽에서 오른쪽으로 갈수록 허용 방향이 단조 증가하고 모든 방향이 어느 차선에서든 허용되는 경우의 수를 구한다.
난이도

보통10점 중 7점

유형
동적 계획법, 조합론, 수학, 구현
정답자
아직 제출이 없습니다

문제

복잡한 교차로에서 교통을 정리할 때, 서로 다른 진로를 가진 운전자들의 주행 궤적이 겹치지 않도록 하기 위해 운전자가 어떤 차로로 교차로에 접근했는지에 따라 허용되는 진로를 제한한다. 이를 위해 <<차로별 진로 안내>> 표지가 사용되며, 오른쪽 그림은 상트페테르부르크의 한 교차로 앞에 설치된 그러한 표지의 예이다.

mm개의 도로가 만나는 교차로로 이어지는 도로 하나를 생각하자. 이 도로로 교차로에 접근한 운전자는 mm개의 서로 다른 방향으로 계속 주행할 수 있다. 즉, 자신이 온 도로로 되돌아가거나, 나머지 m−1m - 1개의 도로 중 하나로 갈 수 있다. 접근하는 운전자의 시점에서 왼쪽에서 오른쪽으로 가능한 방향에 1부터 mm까지 번호를 붙이자. 번호 1은 유턴으로, 운전자가 교차로로 들어온 도로로 되돌아가는 방향이고, 번호 2는 가장 왼쪽 도로로 향하는 방향이며, 이런 식으로 번호가 붙는다.

도로에 nn개의 차로가 있다고 하자. 차로에도 왼쪽에서 오른쪽으로 1부터 nn까지 번호를 붙이며, 가장 왼쪽 차로가 1번, 그 다음 차로가 2번이고, 이런 식으로 번호가 붙는다. <<차로별 진로 안내>> 표지는 각 차로에서 mm개의 가능한 방향 중 일부 방향으로의 주행을 허용한다. 이때 다음 조건을 만족해야 한다.

  1. ii번 차로에서 aa번 방향으로의 주행이 허용되고 jj번 차로에서 bb번 방향으로의 주행이 허용되며 i<ji < j이면, a≤ba \le b이다.
  2. 각 차로에서는 적어도 한 방향으로의 주행이 허용된다.
  3. 각 방향으로는 적어도 한 차로에서의 주행이 허용된다.

교통안전검사국은 이러한 교차로 앞에 설치할 수 있는 <<차로별 진로 안내>> 표지가 몇 가지인지 궁금해한다. 이 질문에 대한 답을 구하자.

입력

입력 파일은 두 정수 mm과 nn을 포함한다(2≤m≤502 \le m \le 50, 1≤n≤151 \le n \le 15).

출력

출력 파일에 교차로 앞에 설치할 수 있는 <<차로별 진로 안내>> 표지의 가짓수를 하나의 수로 출력한다.

힌트

예제에서는 다음과 같은 <<차로별 진로 안내>> 표지가 가능하다.

왼쪽 차로오른쪽 차로
유턴유턴, 좌회전, 직진, 우회전
유턴좌회전, 직진, 우회전
유턴, 좌회전좌회전, 직진, 우회전
유턴, 좌회전직진, 우회전
유턴, 좌회전, 직진직진, 우회전
유턴, 좌회전, 직진우회전
유턴, 좌회전, 직진, 우회전우회전

예제1

  1. 예제 1

    입력
    4 2
    
    예상 출력
    7