题目描述

给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。用火柴棍拼数字0-90−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

方法一:将1-1000的所需火柴数目表示出即可(时间复杂度高)

import java.util.*;
public class Main {public static void main(String[] args) {// TODO Auto-generated method stubint a[]={6,2,5,5,4,5,6,3,7,6};Scanner in=new Scanner(System.in);int n=in.nextInt();n-=4;int b[]=new int[1005];for(int i=0;i<1001;i++){int j=i;do{b[i]+=a[j%10];j/=10;}while(j!=0);}int sum=0;for(int i=0;i<1001;i++){for(int j=0;j<1001;j++){for(int k=0;k<=1001;k++){if(i+j==k&&b[i]+b[j]+b[k]==n){sum++;}}}}System.out.println(sum);}}

方法二:为了降低时间复杂度,可直接打表

import java.util.*;
public class Main {public static void main(String[] args) {// TODO Auto-generated method stubScanner in=new Scanner(System.in);int n=in.nextInt();int a[]={0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,8,9,6,9,29,39,38,65,92,128};System.out.println(a[n]);}}

P1149_火柴棒等式(JAVA语言)相关推荐

  1. 洛谷P1149(NOIP2008) 火柴棒等式 (C语言 + 详细注释)

    题目描述 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能是00).用火柴棍拼数字0-9的拼法如图所示: ...

  2. c语言 火柴加法,C语言程序设计100例之(18):火柴棒等式

    例18   火柴棒等式 用n根火柴棍,可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棒拼出的整数(若该数非零,则最高位不能是0).用火柴棒拼数字0~9的拼法如图 ...

  3. 蓝桥云算法题之火柴棒等式——Python满分解答

    火柴棒等式 题目描述 图片描述 输入描述 输出描述 输入输出样例 示例 1 输入 输出 样例解释 示例 2 输入 输出 样例解释 解题思路 代码实现 题目描述 给你 n 根火柴棍,你可以拼出多少个形如 ...

  4. P1149 火柴棒等式

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

  5. HNUST OJ 2294 火柴棒等式3.0

    问题 K: 火柴棒等式3.0 时间限制: 1 Sec  内存限制: 128 MB 题目描述 给定一个由火柴棒组成的算式,问:是否能够移动一根火柴棒使算式成立.例如:5+7=7,可以通过移动一根火柴变成 ...

  6. “火柴棒等式”【题解】

    "火柴棒等式"的题目 题目 题目描述 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能 ...

  7. [NOIP2008] 火柴棒等式

    220. [NOIP2008] 火柴棒等式 ★   输入文件: matches.in   输出文件: matches.out    简单对比 时间限制:1 s   内存限制:128 MB [问题描述] ...

  8. P1149 [NOIP2008 提高组] 火柴棒等式——暴力枚举

    [NOIP2008 提高组] 火柴棒等式 题目描述 给你 n n n 根火柴棍,你可以拼出多少个形如 A + B = C A+B=C A+B=C 的等式?等式中的 A A A. B B B. C C ...

  9. 火柴棒等式(洛谷P1149题题解,Java语言描述)

    题目要求 P1149题目链接 分析 看起来要搜索,但何必呢?不搜也行啊~ 其实我们预先把每一位的数值(0~9)算出来就好,分别是这样的: key = 0, value = 6 key = 1, val ...

最新文章

  1. Zepto源代码分析之二~三个API
  2. Flink从入门到精通100篇(三)-如何利用InfluxDB+Grafana搭建Flink on YARN作业监控大屏环境
  3. fake it till you become it
  4. Intel图形库Mesa的持续集成
  5. tomcat8 进入不了Manager App 界面 403 Access Denied
  6. (Object-C)学习笔记(一)--开发环境配置和与c语言的区别
  7. 构建Spring微服务并对其进行Dockerize生产
  8. 微软私有云解决方案_微软发布电信云平台 ,互联网巨头争夺5G网络商机
  9. 昆仑通态触摸屏数据转发上传_嵌_ModbusTcpIp数据转发 昆仑通态屏与屏之间通讯 - 下载 - 搜珍网...
  10. 苹果macOS Monterey将支持一键恢复出厂设置,无需重装系统
  11. opencv-python 详解图像梯度、边缘检测
  12. Jenkins 自动化部署流水线优化经验
  13. DDL和DML的含义
  14. 基于Echarts实现可视化数据大屏交通类大数据展示页面模板
  15. CMD里如何用DiskPart命令删除分区
  16. 使用开源软件Prometheus监控企业内部应用
  17. 介质服务器作用,爱数之介质服务器及介质同步技术
  18. linux中rabbitmq服务启动失败,linux系统RabbitMQ启动错误记录
  19. jmeter源码解读
  20. spyder汉化方法

热门文章

  1. java反射机制date类型_java反射机制
  2. fileitem方法_Java FileItem.write方法代码示例
  3. 面试过程中常遇到的Mysql优化方面的面试题
  4. (android R) VNDK library: XXX’s ABI has EXTENDING CHANGES
  5. vue项目中跨域解决方案
  6. Vue3学习之-- vue-router入门教程和总结
  7. 长风破浪会有时,直挂云帆济沧海-2021麒麟信安营销工作会在北京举办
  8. Java中的转义字符
  9. MySQL多表连接查询
  10. APM飞控自动飞行模式下,异常Land降落