首页 > 其他分享 >洛谷[普及]:P1149 [NOIP2008 提高组] 火柴棒等式

洛谷[普及]:P1149 [NOIP2008 提高组] 火柴棒等式

时间:2024-05-23 21:24:59浏览次数:22  
标签:11 count 洛谷 样例 NOIP2008 num 等式 火柴 P1149

[NOIP2008 提高组] 火柴棒等式

感谢题目提供者CCF_NOI

题目描述

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

注意:

1. 加号与等号各自需要两根火柴棍;
2. 如果 A\neq B,则 A+B=C 与 B+A=C 视为不同的等式(A,B,C\geq0);
3. $n$ 根火柴棍必须全部用上。

输入格式

一个整数 n(1 \leq n\leq 24)

输出格式

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

样例 #1

样例输入 #1

14

样例输出 #1

2

样例 #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。

noip2008 提高第二题

题解

number = {1:2,2:5,3:5,4:4,5:5,6:6,7:3,8:7,9:6}
num = {2:[1],3:[7],4:[4],5:[2,3,5],6:[0,6,9],7:[8],8:[],9:[],10:[],11:[]}
n = int(input())
tem = []
count = set()

for i in range(10,1001):
    tem = list(str(i))
    stick = 0
    for _ in tem:
        sticks += origin_num[int(_)]
    if stick <= 11:
        num[stick].append(i)

for i in range(2,12):
    for j in range(i,12):
         k = n - i - j - 4
        if k <= 11 and k >= 2:
            for i in num[i]:
                for j in num[j]:
                    if i + j in num[k]:
                        if i != j:
                            count.add((i,j))
                            count.add((j,i))
                        else:
                            count.add((i,j))
print(len(count))

标签:11,count,洛谷,样例,NOIP2008,num,等式,火柴,P1149
From: https://blog.csdn.net/mmd666/article/details/139132107

相关文章

  • 深度优先搜索 洛谷P1605迷宫
    深度优先搜索洛谷P1605迷宫题目描述给定一个$N\timesM$方格的迷宫,迷宫里有$T$处障碍,障碍处不可通过。在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。给定起点坐标和终点坐标,每个方格最多经过一次,问有多少种从起点坐标到终点坐标的方......
  • 广度优先搜索 洛谷P2895Meteor Shower S
    广度优先搜索洛谷P2895[USACO08FEB]MeteorShowerS题面翻译题目描述贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。如果将牧场放入一个直角坐标系中,贝茜......
  • 二分答案 洛谷P3853路标设置
    这个题思路和洛谷P2440有点像,建议先看P2440这个题,较简单。[TJOI2007]路标设置题目背景B市和T市之间有一条长长的高速公路,这条公路的某些地方设有路标,但是大家都感觉路标设得太少了,相邻两个路标之间往往隔着相当长的一段距离。为了便于研究这个问题,我们把公路上相邻路标的最......
  • 广度优先搜索 洛谷P1443马的遍历(bfs超时问题)
    广度优先搜索洛谷P1443这里先介绍一下广度优先搜索:广度优先搜索就是先将第一步可能的步骤全部记录,遍历过后,再将由第一步到达的第二步全部记录并遍历,直到最后全部遍历。而此题要求我们求得最少步数,广度优先就能够达到最少步数的要求,因为广度优先是先通过搜索所有可能的第n步才......
  • 深度优先搜索 洛谷P1219八皇后
    深度优先搜索洛谷P1219这是一道经典的深度优先搜索问题,深度优先搜索可用以下模板:voiddfs(intdepth){ if(达到边界){ 记录解 } for(枚举在depth这一深度,能够使用的解){ if(解可行){ 记录解(记录已经被使用) dfs(depth+1) 恢复解(恢复原状) } }}题目要求我们......
  • 二分答案 洛谷2440木材加工
    二分答案题目详见洛谷P2440木材加工分享一下自己新学习的二分答案的方法,开始可能有点奇怪为啥这样能做,但其实思路很简单。起始思路题目要求我们求最大的分解长度,所以我(们)最开始想的肯定是从大到小(求最大值)枚举答案,看看是否满足,满足不了就加1。但这样暴力肯定是会超时的,那我们......
  • 洛谷 P4383 [八省联考 2018] 林克卡特树
    原题等价于在树上选出\(k+1\)条不相交链,最大化边权和。树形DP。设\(f_{u,k,0/1/2}\)表示在\(u\)的子树中选了\(k\)条链,\(u\)的度数为\(0,1,2\)的最大边权和。注意到状态里缺了链退化为单个点的情况,可以把它放到\(f_{u,k,2}\)中(相当于自环)。转移时分讨一......
  • P1057 [NOIP2008 普及组] 传球游戏
    链接:https://www.luogu.com.cn/problem/P1057思路:左手倒右手,建立递推方程建立初始参数:定义dp[j][k]是第k次,以j结尾的方法,就是传k次最后传到j的方法。那么状态转移方程:dp[j][k]=dp[next][k-1]+dp[before][k-1]。其中before是j的前一个元素(j-1);next是j的后一个元素j+1。同时要注......
  • 洛谷 P10512 序列合并
    哭死,比赛的时候完全想歪了,想的是考虑一次合并能造成多大的贡献,按照贡献排序然后合并。这样做只能考虑局部造成的贡献,然而最后算的时候要考虑整体,所以并不是很对。正着想没有思路就可以倒着想,考虑枚举答案。合并k次,意味着最后是n-k个数。经典从二进制高位到低位考虑,考虑这一位(假......
  • Solution -「洛谷 P8477」 「GLR-R3」春分 下界证明?!
      前情提要:在「洛谷P8477」「GLR-R3」春分中,我们给出了\(\frac{7}{6}n\pm\mathcalO(1)\)的解法,但没能给出相关的下界证明。现在我们尝试给出一个未完全完成的下界证明。  为方便描述,我们综合链接中题意和某个“通俗”的题意,称隔板为“板”,称溶液为“人”。  这个......