Description
Let’sconsider K-basednumbers, containing exactly Ndigits. We define a number to be valid if its K-basednotation doesn’t contain two successive zeros. For example:
-
1010230 is a valid 7-digitnumber;
-
1000198 is not a validnumber;
-
0001235 is not a 7-digitnumber, it is a 4-digit number.
Giventwo numbers Nand K,you are to calculate an amount of valid Kbased numbers, containing Ndigits.
Youmay assume that 2 ≤ K≤ 10; N≥ 2; N+ K≤ 18.
Input
Thenumbers Nand Kin decimal notation separated by the line break.
Output
The result in decimalnotation.
SampleInput
2
10
SampleOutput
90
package OJ;
import java.util.*;
public class P13_temp {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int digit = in.nextInt();
int decimal = in.nextInt();
int secdecimal = decimal - 1;
int final_0 = 0;
int Notfinal_0 = 0;
int sum = 0;
for(int i=0; i<digit; i++){
if(i == 0){
Notfinal_0 = secdecimal;
sum = secdecimal;
}
else{
sum = final_0 * secdecimal + Notfinal_0 * decimal;
if(i != digit-1){
final_0 = Notfinal_0;
Notfinal_0 = sum - final_0;
}
}
}
System.out.println(sum);
}
}