📄 2503823_ac_0ms_140k.cpp
字号:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <math.h>
char w[13], x[13];
int num;
int f(int p)
{
int i, j, no, t;
for(i = p; x[i]!='\0'; i++)
{
if(x[i]!='?')
{
if(x[i]!=w[i])
{
if(x[i]>w[i])
return (int)pow(10,num);
else
return 0;
}
}
else
{
no = 0;
j = i;
int tt, v = 1;
while(x[j]!='\0'&&x[j]=='?')
j++,no++,num--;
tt = 0;
for(t = j-1; t >= i; t--)
tt += (w[t]-'0')*v,v*=10;
return ((int)pow(10,no)-1-tt)*(int)pow(10,num)+(x[j]=='\0'?0:f(j));
}
}
return 0;
}
int main()
{
int i;
while(scanf("%s",x)==1&&x[0]!='#')
{
num = 0;
scanf("%s",w);
for(i = 0; x[i]!='\0'; i++)
num += (x[i]=='?');
for(i = 0; x[i]!='\0'; i++)
if(x[i]==w[i])
{
strcpy(&w[i],&w[i+1]);
strcpy(&x[i],&x[i+1]);
i--;
}
printf("%d\n",f(0));
}
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -