游客 Signup | Login
中文 | En

2208 - 价格

Miaowu不是很喜欢逛街,除非陪妹纸或者基友,当然,他也可能自己逛街,他唯一一次自己逛街是大一的时候,在光谷买了一只草泥马回来……Orz

有一次,他和基友逛街的时候为了排遣寂寞的心情,观察着各种价格牌,看着上面的价格,在心里计算这个价格有哪几位是能整除这个价格的。

例如,当价格为12345时,存在于价格中的数有1,2,3,4,5,其中135能够整除12345,因此答案为3

当然他的基友不高兴了,让你帮他做一个剧透程序,也就是当他每看到一个价格时,马上就能告诉他结果,这样他就能认真逛街了……Orz

Input

第一行输入一个数T,表示测试数据个数,对于每组测试数据,输入一个整数n (0<=n<=10^9)

Output

对于每组测试数据,输出一个数,表示存在于n之中且n能被该数整除的一位数的个数

Examples

Input

4
12345
661232
52527
730000

Output

3
3
0
0

Hint

注意,除数不能为0,因此任何数不能被0整除。

第二个样例中12可以整除,由于有22,11,所以答案为3

Solution C

#include<stdio.h>
int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        int n,m,a;
        int s=0;
        scanf("%d",&n);
        int t=n;
        while(t)
        {
        m=t%10;
        if(m!=0)
        {
        a=n%m;
        if(a==0)
        s=s+1;}
        t=t/10;
        }
        printf("%d\n",s);
        }
    }

Solution C++

#include<stdio.h>
int main()
{
    int T,n,i,b,c;
    int a[10000];
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d",&n);
        b=n;
        for(i=1,c=0;b!=0;i++)
        {
            a[i]=b%10;
            b=b/10;
            if(a[i]==0)
            {
                c=c;
            }
            else if(n%a[i]==0)
            {
                c+=1;
            }
        }
        printf("%d\n",c);
    }

    return 0;
}

Hint

注意,除数不能为0,因此任何数不能被0整除。

第二个样例中12可以整除,由于有22,11,所以答案为3

Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题