题目描述
求n位十进制数中,出现奇数个5的数字的个数x,和出现偶数个5的数字的个数y。
P.S. n位数是指正常的n位数。
比如两位数:不存在01,02,03这种正常人都不会写出来的两位数。
输入格式
多组数据输入。
对于每组数据,每行一个正整数n。
( 1 <= n <= 15)
输出格式
每组数据输出一行,为两个整数x和y。
样例输入
1
样例输出
1 9
提示
1位数有 0,1,2,3,4,5,6,7,8,9;
出现奇数个5的数字是:5,出现了1次。
出现偶数个5的数字分别是:0,1,2,3,4,6,7,8,9。都出现了0次。
#include<iostream>
using namespace std;
const int MAX=20;
long long ji[MAX],ou[MAX];
int main(){
int n;
ji[1]=1,ou[1]=8;
for(int i=2;i<MAX;i++){
ji[i]=ou[i-1]+9*ji[i-1];
ou[i]=ji[i-1]+9*ou[i-1];
}
ou[1]++;
while(cin>>n)
cout<<ji[n]<<" "<<ou[n]<<endl;
return 0;
}