P1149_火柴棒等式(JAVA语言)
题目描述
给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。用火柴棍拼数字0-90−9的拼法如图所示:
注意:
加号与等号各自需要两根火柴棍
如果A≠B,则A+B=C与B+A=C视为不同的等式(A,B,C>=0)
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语言)相关推荐
- 洛谷P1149(NOIP2008) 火柴棒等式 (C语言 + 详细注释)
题目描述 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能是00).用火柴棍拼数字0-9的拼法如图所示: ...
- c语言 火柴加法,C语言程序设计100例之(18):火柴棒等式
例18 火柴棒等式 用n根火柴棍,可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棒拼出的整数(若该数非零,则最高位不能是0).用火柴棒拼数字0~9的拼法如图 ...
- 蓝桥云算法题之火柴棒等式——Python满分解答
火柴棒等式 题目描述 图片描述 输入描述 输出描述 输入输出样例 示例 1 输入 输出 样例解释 示例 2 输入 输出 样例解释 解题思路 代码实现 题目描述 给你 n 根火柴棍,你可以拼出多少个形如 ...
- P1149 火柴棒等式
火柴棒等式 题目: 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能是0).用火柴棍拼数字0−9的拼法如图 ...
- HNUST OJ 2294 火柴棒等式3.0
问题 K: 火柴棒等式3.0 时间限制: 1 Sec 内存限制: 128 MB 题目描述 给定一个由火柴棒组成的算式,问:是否能够移动一根火柴棒使算式成立.例如:5+7=7,可以通过移动一根火柴变成 ...
- “火柴棒等式”【题解】
"火柴棒等式"的题目 题目 题目描述 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能 ...
- [NOIP2008] 火柴棒等式
220. [NOIP2008] 火柴棒等式 ★ 输入文件: matches.in 输出文件: matches.out 简单对比 时间限制:1 s 内存限制:128 MB [问题描述] ...
- P1149 [NOIP2008 提高组] 火柴棒等式——暴力枚举
[NOIP2008 提高组] 火柴棒等式 题目描述 给你 n n n 根火柴棍,你可以拼出多少个形如 A + B = C A+B=C A+B=C 的等式?等式中的 A A A. B B B. C C ...
- 火柴棒等式(洛谷P1149题题解,Java语言描述)
题目要求 P1149题目链接 分析 看起来要搜索,但何必呢?不搜也行啊~ 其实我们预先把每一位的数值(0~9)算出来就好,分别是这样的: key = 0, value = 6 key = 1, val ...
最新文章
- Zepto源代码分析之二~三个API
- Flink从入门到精通100篇(三)-如何利用InfluxDB+Grafana搭建Flink on YARN作业监控大屏环境
- fake it till you become it
- Intel图形库Mesa的持续集成
- tomcat8 进入不了Manager App 界面 403 Access Denied
- (Object-C)学习笔记(一)--开发环境配置和与c语言的区别
- 构建Spring微服务并对其进行Dockerize生产
- 微软私有云解决方案_微软发布电信云平台 ,互联网巨头争夺5G网络商机
- 昆仑通态触摸屏数据转发上传_嵌_ModbusTcpIp数据转发 昆仑通态屏与屏之间通讯 - 下载 - 搜珍网...
- 苹果macOS Monterey将支持一键恢复出厂设置,无需重装系统
- opencv-python 详解图像梯度、边缘检测
- Jenkins 自动化部署流水线优化经验
- DDL和DML的含义
- 基于Echarts实现可视化数据大屏交通类大数据展示页面模板
- CMD里如何用DiskPart命令删除分区
- 使用开源软件Prometheus监控企业内部应用
- 介质服务器作用,爱数之介质服务器及介质同步技术
- linux中rabbitmq服务启动失败,linux系统RabbitMQ启动错误记录
- jmeter源码解读
- spyder汉化方法