1313:【例3.5】位数问题

简介: 1313:【例3.5】位数问题

1313:【例3.5】位数问题

时间限制: 1000 ms         内存限制: 65536 KB

【题目描述】

在所有的N位数中,有多少个数中有偶数个数字3。由于结果可能很大,你只需要输出这个答案对12345取余的值。

【输入】

读入一个数N(N≤1000)。

【输出】

输出有多少个数中有偶数个数字3。

【输入样例】

2

【输出样例】

73

【来源】

No

1. #include<iostream>
2. #include<stdio.h>
3. using namespace std;
4. int f[1002][2]={0};
5. int main()
6. {
7.  int n,x,i;
8.  scanf("%d",&n);
9.  f[1][0]=9;//f[i][0]前i位取偶数个3有几种情况
10.   f[1][1]=1;//f[i][1]前i位取奇数个3有几种情况
11.   for(i=2;i<=n;i++){
12.     x=9;//低于最高位取偶数个3有9种情况 
13.     if(i==n) x=8;//最高位取偶数个3有8种情况 
14.     f[i][0]=(f[i-1][0]*x+f[i-1][1])%12345;//i是偶数的情况+i为奇数的情况 
15.     f[i][1]=(f[i-1][1]*x+f[i-1][0])%12345;//i是偶数的情况+i为奇数的情况 
16.   }
17.   printf("%d",f[n][0]);
18.   return 0;
19. }

 

相关文章
|
7月前
|
人工智能
PTA-求整数的位数及各位数字之和
求整数的位数及各位数字之和
64 4
|
7月前
|
算法 Python
计算32位二进制整数中1的个数(包括负数补码)
计算32位二进制整数中1的个数(包括负数补码)
127 0
|
7月前
[leetcode 数位计算]2520. 统计能整除数字的位数
[leetcode 数位计算]2520. 统计能整除数字的位数
|
7月前
打印2进制位数的奇数位和偶数位
打印2进制位数的奇数位和偶数位
统计两个整数所对应的二进制数中的不同位数的个数
统计两个整数所对应的二进制数中的不同位数的个数
44 0
|
C++
C++ 输出特定位数小数
C++ 输出特定位数小数
142 0
一个数字的二进制数字里的一的个数(负数用补码)
这是一种解决问题的函数,缺点,会有死循环,((int)pow(-2, i))这个值的结果是整形永远达不到那个数字2147483648,我们必须自己规定那个数字
52 0
求整数的位数及各位数字之和
求整数的位数及各位数字之和
105 0
35.数值的整数次方
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方
53 0
35.数值的整数次方
|
前端开发 JavaScript 程序员
数值的整数次方
数值的整数次方
数值的整数次方