3 条题解

  • 1
    @ 2024-12-3 12:30:03

    #include

    int num[11]={6,2,5,5,4,5,6,3,7,6};

    int s(int x) { if(x==0)return num[0]; int ans=0; while(x!=0) { int t=x%10; ans+=num[t]; x/=10; } return ans; }

    int main() { int n,total=0; scanf("%d",&n); for(int i=0;i<=1000;++i) { for(int j=0;j<=1000;++j) { if(s(i)+s(j)+s(i+j)+4==n) { ++total;

            }
        }
    }
    printf("%d",total);
    return 0;
    

    }

    • 0
      @ 2024-12-6 20:44:13

      #include<bits/stdc++.h> using namespace std; int main(){ int n; int f[10000]; f[0]=6;f[1]=2;f[2]=5;f[3]=5;f[4]=4; f[5]=5;f[6]=6;f[7]=3;f[8]=7;f[9]=6; for(int i=10; i<=99; i++) f[i]=f[i/10]+f[i%10]; for(int i=100; i<=999; i++) f[i]=f[i/100]+f[(i-(i/100)*100)/10]+f[i%10]; for(int i=1000; i<=9999; i++) f[i]=f[i/1000]+f[i-((i/1000)*1000)/100]+f[(i-(i/100)*100)/10]+f[i%10]; int total=0; cin>>n; for(int a=0; a<=1111; a++) for(int b=0; b<=1111; b++) { int c=a+b; if(f[a]+f[b]+f[c]==n-4)total++; } cout<<total<<endl; return 0; }

      • 0
        @ 2024-12-3 12:30:32

        #include

        int num[11]={6,2,5,5,4,5,6,3,7,6};

        int s(int x) { if(x==0)return num[0]; int ans=0; while(x!=0) { int t=x%10; ans+=num[t]; x/=10; } return ans; }

        int main() { int n,total=0; scanf("%d",&n); for(int i=0;i<=1000;++i) { for(int j=0;j<=1000;++j) { if(s(i)+s(j)+s(i+j)+4==n) { ++total;

                }
            }
        }
        printf("%d",total);
        return 0;
        

        }

        • 1

        信息

        ID
        5207
        时间
        1000ms
        内存
        125MiB
        难度
        2
        标签
        递交数
        95
        已通过
        47
        上传者