CF337C.Quiz

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Manao is taking part in a quiz. The quiz consists of n consecutive questions. A correct answer gives one point to the player. The game also has a counter of consecutive correct answers. When the player answers a question correctly, the number on this counter increases by 1. If the player answers a question incorrectly, the counter is reset, that is, the number on it reduces to 0. If after an answer the counter reaches the number k, then it is reset, and the player's score is doubled. Note that in this case, first 1 point is added to the player's score, and then the total score is doubled. At the beginning of the game, both the player's score and the counter of consecutive correct answers are set to zero.

Manao remembers that he has answered exactly m questions correctly. But he does not remember the order in which the questions came. He's trying to figure out what his minimum score may be. Help him and compute the remainder of the corresponding number after division by 1000000009 (109 + 9).

马瑙正在参加一场问答比赛。比赛由连续的 nn 道题目组成。每答对一题,玩家得 1 分。比赛还有一个“连续答对题数”计数器:当玩家答对一题时,该计数器加 1;若答错,则计数器重置为 0。特别地,若某次回答后该计数器恰好达到 kk,则计数器立即重置为 0,且玩家当前总分翻倍。注意:在此情形下,先加 1 分(即本次答对带来的 1 分),再将总分翻倍。游戏开始时,玩家得分为 0,连续答对题数计数器也为 0。

马瑙记得自己总共答对了恰好 mm 道题,但他不记得这些正确答案在 nn 道题中出现的具体顺序。他想知道自己可能得到的最低得分是多少。请你帮他计算该最小得分对 10000000091000000009(即 109+910^9 + 9)取模的结果。

输入格式

The single line contains three space-separated integers n, m and k (2 ≤ k ≤ n ≤ 109; 0 ≤ m ≤ n).

单行包含三个以空格分隔的整数 nn、mm 和 kk(满足 2 ≤ k ≤ n ≤ 1092 \le k \le n \le 10^9;0 ≤ m ≤ n0 \le m \le n)。

输出格式

Print a single integer — the remainder from division of Manao's minimum possible score in the quiz by 1000000009 (109 + 9).

输出一个整数——即马瑙在测验中可能得到的最低分数对 1000000009(109+910^9 + 9)取模的余数。

输入输出样例

  • 输入#1

    5 3 2

    输出#1

    3
  • 输入#2

    5 4 2

    输出#2

    6

说明/提示

Sample 1. Manao answered 3 questions out of 5, and his score would double for each two consecutive correct answers. If Manao had answered the first, third and fifth questions, he would have scored as much as 3 points.

Sample 2. Now Manao answered 4 questions. The minimum possible score is obtained when the only wrong answer is to the question 4.

Also note that you are asked to minimize the score and not the remainder of the score modulo 1000000009. For example, if Manao could obtain either 2000000000 or 2000000020 points, the answer is 2000000000 mod 1000000009, even though 2000000020 mod 1000000009 is a smaller number.

样例 1:Manao 回答了 5 道题中的 3 道,且每当有连续两道题回答正确时,其得分就会翻倍。若 Manao 答对的是第 1、第 3 和第 5 题,则他最终得分为 3 分。

样例 2:现在 Manao 回答了 4 道题。当唯一答错的题目是第 4 题时,可获得最小可能得分。

还需注意:本题要求最小化得分本身,而非该得分对 10000000091000000009 取模后的余数。例如,若 Manao 可能获得 20000000002000000000 或 20000000202000000020 分,则答案为 2000000000 mod 10000000092000000000 \bmod 1000000009,即使 2000000020 mod 10000000092000000020 \bmod 1000000009 的值更小。

输入解题思路,AI测评打分。不知道怎么写?

首页