80分,RE两个点

P1618 三连击(升级版)

HEIMOFA @ 2023-04-12 22:31:54

#include<bits/stdc++.h>
using namespace std;
int n[15],check;

void tc(int x){
    n[x/100]=1;
    n[x/10%10]=1;
    n[x%10]=1;
}
int main()
{
    int a,b,c;
    int m=0;
    scanf("%d%d%d",&a,&b,&c);
    for(int i=100;i<=999;i++){
        memset(n,0,sizeof(n));
        check=1;
        tc(i*a);tc(i*b);tc(i*c);
        for(int i=1;i<=9;i++) if(n[i]!=1) {check=0;break;}
        if(!check) continue;
        printf("%d %d %d\n",i*a,i*b,i*c);
        m=1;
    }
    if(!m) printf("No!!!");
    return 0;
}

by xxc123 @ 2023-06-30 22:17:28


#include<cstring>
using namespace std;
int f[10];
void fj(int s)
{
    while(s>0)
    {
        int t=s%10;
        s/=10;
        f[t]++;
    }
}
int main()
{
    int a,b,c,sign=0;
    cin>>a>>b>>c;
    for(int i=1;i<=9;i++)
    {
        for(int j=1;j<=9;j++)
        {
            for(int k=1;k<=9;k++)
            {
                int flag=1;
                int t=i*100+j*10+k;
                fj(t*a);fj(t*b);fj(t*c);
                for(int i=1;i<=9;i++)
                {
                    if(f[i]!=1)
                    {
                        flag=0;
                        break;
                    }
                }
                if(flag) sign=1,cout<<t<<" "<<2*t<<" "<<3*t<<endl; 
                memset(f,0,sizeof(f));
            }
        }
    }
    if(!sign) cout<<"No!!!"<<endl;
    return 0;
}
  ```我也是错了

|