QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 100

#21035. 도장으로 그림 그리기

Statistics

Bessie는 길이 $N$ 단위의 캔버스 띠($1 \leq N \leq 10^6$)를 얻어 그림을 그리려 하지만 붓을 구하지 못했습니다. 대신 색이 서로 다른 $M$개의 고무 도장($1 \leq M \leq 10^6$)이 있으며 각각 너비가 $K$ 단위입니다($1 \leq K \leq 10^6$). 다양한 가능성에 놀란 Bessie는 어떤 순서로 도장을 찍어 서로 다른 그림을 정확히 몇 개 만들 수 있는지 궁금합니다.

도장은 캔버스의 정확히 $K$개의 인접한 단위에 맞추어야 합니다. 양 끝을 넘거나 단위의 일부만 덮을 수 없습니다. 덮인 $K$개의 단위를 도장 색으로 칠합니다. 각 도장은 여러 번, 한 번, 또는 전혀 쓰지 않아도 됩니다. 하지만 끝났을 때는 모든 단위가 적어도 한 번 칠해져 있어야 합니다.

Bessie를 도와 서로 다른 그림 수를 $10^9 + 7$로 나눈 나머지를 구하세요. 찍는 연산 순서가 달라도 모습이 같으면 같은 그림입니다.

입력

유일한 입력 줄에는 세 정수 $N$, $M$, $K$이 주어집니다. $K \leq N$가 보장됩니다.

출력

하나의 정수: 가능한 그림 수를 $10^9 + 7$로 나눈 나머지입니다.

예제

입력 1

3 2 2

출력 1

6

참고

두 도장의 색이 A와 B이면 가능한 그림은 AAA, AAB, ABB, BAA, BBA, BBB입니다.

서브태스크

입력 케이스의 적어도 $75\%$에서 $N,K \leq 10^3$입니다.

출제: Dhruv Rohatgi

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.