蒟蒻求助,第二和第三过不去呀

P1618 三连击(升级版)

XJTUSTUCODER @ 2020-03-04 12:23:23

#include "stdio.h"
#include"string.h"

int main(void)
{
    int a,b,c,i,j,k,m,temp=0,flag[10]={0};
    scanf("%d %d %d",&a,&b,&c);

    int num[3];
    for(i=123;i*c/a<=987;i++)
    {
        memset(flag,0,sizeof(flag));//flag数组重新置零

        if((i*b)%a==0&&(i*c)%a==0)//保证第二和第三个数是整数
        {
            num[0]=i;
            num[1]=i*b/a;
            num[2]=i*c/a;
        }
        else
            break;

        //将三个数每个数的位数剥下来,做标记
        for(j=0;j<3;j++)
        {
            for(k=num[j];k>0;k/=10)
            {
                flag[k%10]=1;
            }
        }

        //判断是否1~9每个数都在
        for(m=1;m<10;m++)
        {
            if(flag[m]==0) break; 
        }

        //1~9都有,则输出
        if(m==10)
        {
            temp=1;
            printf("%d %d %d\n",num[0],num[1],num[2]);
        }   
    }

    if(temp==0)
    {
        printf("NO!!!");
    }

    return 0;
}

by mamingxiao @ 2020-10-26 14:30:39

@XJTUSTUCODER


by mamingxiao @ 2020-10-26 15:53:51

该死的手滑


上一页 |