zoukankan      html  css  js  c++  java
  • 洛谷 P1149.火柴棒等式

    洛谷 P1149.火柴棒等式

    题目描述

    给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。用火柴棍拼数字0−9的拼法如图所示:

    注意:

    1、加号与等号各自需要两根火柴棍

    2、如果A≠B,则A+B=C与B+A=C视为不同的等式(A,B,C>=0)

    3、n根火柴棍必须全部用上

    输入格式

    一个整数n(n<=24)。

    输出格式

    一个整数,能拼成的不同等式的数目。

    输入输出样例

    输入样例#1
    14
    
    输出样例#1
    2
    
    输入样例#2
    18
    
    输出样例#2
    9
    

    说明/提示

    【输入输出样例1解释】

    2个等式为0+1=1和1+0=1。

    【输入输出样例2解释】

    9个等式为:

    0+4=4
    0+11=11
    1+10=11
    2+2=4
    2+7=9
    4+0=4
    7+2=9
    10+1=11
    11+0=11
    

    题目思路

    #include<bits/stdc++.h>
    using namespace std;
    
    const int N = 2000;
    
    int a[N]{6,2,5,5,4,5,6,3,7,6};
    
    void init()
    {
        for(int i=10;i<N;i++)
        {
            a[i]=a[i/10]+a[i%10];
        }
    }
    
    int main()
    {
        int n;
        scanf("%d",&n);
        n-=4;
        if(n<9){
            printf("0");
            return 0;
        }
        init();
        int res = 0,t;
        for(int i=0;i<800;i++)
            for(int j=0;j<800;j++)
            {
                if(a[i]+a[j]+a[i+j]==n)
                res++;
            }
        printf("%d",res);
        return 0;
    }
    
  • 相关阅读:
    PHP多进程编程
    2013年中国数据库大会PPT
    python学习笔记
    策略分析方法论
    Linux操作系统下定时发送邮件
    PHP初学
    Linux操作下的进程管理利器 Supervise
    Hive中小表与大表关联(join)的性能分析zz
    工作杂记4
    PostgreSQL 13 源码安装【转载】 规格严格
  • 原文地址:https://www.cnblogs.com/fsh001/p/12321297.html
Copyright © 2011-2022 走看看