给定一个带通配符问号的数W,问号可以代表任意一个一位数字。
再给定一个整数X,和W具有同样的长度。
问有多少个整数符合W的形式并且比X大?
输入格式
多组数据,每组数据两行,第一行是W,第二行是X,它们长度相同。在[1..10]之间.
输出格式
每行一个整数表示结果。
答题说明
输入样例
36?1?8
236428
8?3
910
?
5
输出样例
100
0
4
思路:
从左往右依次判断各个数字,分别判断数字的情况和通配符的情况。通配符的情况可转换为更小规模的子问题。
此题重点考察分类讨论的能力,可以拿笔出来写下各种情况的分解。
#include#include #include #include #include #include using namespace std;const int N=101;char a[N];char b[N];//return greater int findge(char* a, char *b){ int r=0; int count=0; int len=strlen(a); for(int i=0;i b[i]) { return r+pow(10, count); } //小于,后面取什么都不行 else if(a[i]