*267题

原题传送门:http://oj.tfls.net/p/267

题解:

#include<bits/stdc++.h>
using namespace std;
int c,m;
int ans[30];
int sz[1005] = {6, 2, 5, 5, 4, 5, 6, 3, 7, 6, 8, };
// 这里对应 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, };
int main(){
cin>>m;
for (int i=11; i<=1000; i++){
sz[i]=sz[i/10]+sz[i%10];
}//这里通过前面的1-10来计算后面的11-1001
for (int i=0; i<1000; i++){//第一个加数

for (int j=0; j<1000-i; j++){//第二个加数

c=i+j;

ans[sz[i]+sz[j]+sz[c]+4]++;
}
}
cout<<ans[m];

return 0;

}

方法:我用的是两个数相加得第三个数,总共的火柴根数记录在数组里,每一个可能都计算一遍,需要哪一个直接调用

虽然数据比较全,但速度慢了很多

说明:这里我原本以为是三个一位数,就用了0-9来存取,和不大于9

后来一直爆零,就用原样输出看看数据和答案

#include<bits/stdc++.h>
using namespace std;
int main(){
int m;
cin>>m;
cout<<m;
return 0;
}

发现m=24时有高达128个答案,而两个一位数只有100种可能

于是我聪明的大脑立刻明白肯定不是一位数。

这里我原样输出,把它输入的原样输出,所以“读取到”的是输入,“应为”是正确答案,也算是取巧了吧,不过我保证没有按照答案写程序

然后我开始算更大的范围,从一位数扩展到两位数,再到四位数,在最大范围1005时满分通过

这个题还是很离谱的,要不是我范围够大,谁能想到m=24时,加数居然到了711!

这个是m=24的后边的一些结果,可以看到,范围真的离谱

第一次写博客,留个纪念

c++练习267题 火柴棒等式的更多相关文章

  1. 用Python写算法题--洛谷P1149 火柴棒等式

    题目 题目来源 P1149 火柴棒等式,https://www.luogu.org/problem/P1149 题目描述 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式? ...

  2. noip2008 火柴棒等式

    P1149 火柴棒等式 1.9K通过 3.7K提交 题目提供者该用户不存在 标签搜索/枚举模拟2008NOIp提高组 难度普及- 提交该题 讨论 题解 记录   题目描述 给你n根火柴棍,你可以拼出多 ...

  3. C语言程序设计100例之(18):火柴棒等式

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

  4. NOIP200806 火柴棒等式【B005】

    [B005]火柴棒等式[难度B]———————————————————————————————————————————————————————————— [题目要求] 给你n根火柴棍,你可以拼出多少个 ...

  5. NOIP 2008 火柴棒等式

    洛谷 P1149 火柴棒等式 洛谷传送门 JDOJ 1540: [NOIP2008]火柴棒等式 T2 JDOJ传送门 Description 给你n根火柴棍,你可以拼出多少个形如"A+B=C ...

  6. 洛谷-火柴棒等式-NOIP2008提高组复赛

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

  7. luogu P1149 火柴棒等式

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

  8. [NOIP2008] 提高组 洛谷P1149 火柴棒等式

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

  9. 【b802】火柴棒等式

    Time Limit: 1 second Memory Limit: 50 MB [问题描述] 给你n根火柴棍,你可以拼出多少个形如"A+B=C"的等式?等式中的A.B.C是用火柴 ...

  10. 火柴棒等式c++

    先建立一个sum数组,打表存入1—9每个数字需要的火柴棒数,然后手动二重循环0—1000的所有数字,写一个int型函数用来计算每个数字需要多少根火柴棒(当前数字%10后在sum数组的下标),然后,最后 ...

随机推荐

  1. Linux基础操作-01

    Linux操作系统 很多IC设计的EDA工具都是在Linux系统中进行运行的,在IC设计的从业者都需要熟练掌握Linux操做.可以不掌握Linux原理,但是操作要熟练. Linux 操作系统的特点 多 ...

  2. 刷题笔记——3003.鸡兔同笼问题 & 2767.计算多项式的值

    题目1 3003.鸡兔同笼问题 代码 while True: try: x,y=map(int,input().strip().split()) a = int((4*x-y) / 2) b = x ...

  3. Solon Java Framework v1.12.2 发布

    一个更现代感的 Java 应用开发框架:更快.更小.更自由.没有 Spring,没有 Servlet,没有 JavaEE:独立的轻量生态.主框架仅 0.1 MB. @Controller public ...

  4. angular11报错Can't bind to 'ngForOf' since it isn't a known property of 'tr'. 三种排查办法以及解决方案

    当你遇到Can't bind to 'ngForOf' since it isn't a known property of 'tr'. (" //无法绑定到"ngforof&qu ...

  5. RealWorld CTF 5th ShellFind 分析

    前言 RealWorld CTF 5th 里的一道iot-pwn,根据真实设备固件改编而成,觉得题目贴近iot实战且很有意思,故在此记录一下复现过程. 题目分析 题目描述 Hello Hacker. ...

  6. 重写Object类的equals方法-Objects类的equals方法

    重写Object类的equals方法 Object类的equals方法默认比较的是两个对象的地址值,没有意义所以我们学要重写equals方法,比较两个对象的属性值(name,age) 对象的属性值一样 ...

  7. PHP判断访问来源是PC端还是移动端

    一个方法轻松搞定,各种判断后当返回true为移动端,反之为PC端. function isMobile(){ // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($ ...

  8. vue学习笔记(一) ---- vue指令(过滤器)

    一.什么是过滤器 官方文档:https://cn.vuejs.org/v2/guide/filters.html 二.过滤器的使用 没有使用过滤器之前: <div id="app&qu ...

  9. 分布式配置nacos搭建踩坑指南(下)

    上一篇介绍了在配置nacos中的碰到的坑,这一篇介绍一下如何正确进行nacos的环境搭建和配置,所以本文分为两部分,第一部分为环境搭建,介绍如何安装和运行.第二部分为alibaba Sprint Bo ...

  10. 视觉十四讲:第十二讲_RGB-D稠密点云

    1.点云地图 所谓点云,就是由一组离散的点表示的地图,最基本的点包含x,y,z三维坐标,也可以带有r,g,b的彩色信息. #include <iostream> #include < ...