首页 > 其他分享 >P1149 [NOIP2008 提高组] 火柴棒等式

P1149 [NOIP2008 提高组] 火柴棒等式

时间:2024-04-06 22:31:33浏览次数:28  
标签:11 10 int sum NOIP2008 等式 火柴 P1149

目描述

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

注意:

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

输入格式

一个整数 (1≤≤24)n(1≤n≤24)。

输出格式

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

输入输出样例

输入 #1复制

14

输出 #1复制

2

输入 #2复制

18

输出 #2复制

9

说明/提示

【输入输出样例 1 解释】

22 个等式为 0+1=10+1=1 和 1+0=11+0=1。

【输入输出样例 2 解释】

99 个等式为

0+4=40+4=4、0+11=110+11=11、1+10=111+10=11、2+2=42+2=4、2+7=92+7=9、4+0=44+0=4、7+2=97+2=9、10+1=1110+1=11、11+0=1111+0=11。

noip2008 提高第二题

答案:

#include<iostream>
#include<algorithm>
#include<cstring>

using namespace std;
const int N=10010;
int arr[N];
int n,res=0;
int q[N]={6,2,5,5,4,5,6,3,7,6};

int col(int x)
{
	if(q[x]>0) return q[x];
	else{
		int sum=0;
		while(x)
		{
			sum+=(q[x%10]);
			x/=10; 
		}
		return sum;
	}
}

void dfs(int x,int sum)
{
	if(sum>n) return;
	if(x>3)
	{
		if(arr[1]+arr[2]==arr[3] && sum==n)
		{
			res++;
		}
		return ;
	}
	for(int i=0;i<=1000;i++)
	{
		arr[x]=i;
		dfs(x+1,sum+col(i));
		arr[x]=0;
	}
}
int main()
{
	scanf("%d",&n);
	n-=4;
	dfs(1,0);
	printf("%d",res);
	return 0;
}

标签:11,10,int,sum,NOIP2008,等式,火柴,P1149
From: https://blog.csdn.net/2401_83324189/article/details/137433830

相关文章

  • 均值不等式
    均衡不等式这个名字霸气泄露,但学起来依然霸气泄露。算数平均值:若有正数a,b,则\(\frac{a+b}{2}\)是\(a,b\)的算术平均值。几何平均值:顾名思义,一看就是有关\(ab\)的。若有\(a,b\),则\(\sqrt{ab}\)是\(a,b\)的几何平均值。正题:均衡不等式娱乐上网搜了搜,是哪个闲人......
  • 洛谷 P1006 [NOIP2008 提高组] 传纸条
    题意:传纸条,跟方格取数一样,但是两条路径不能有重复的。思路:还是一样的走,但是x1跟x2不能相等,包括现在跟上一个状态。总结:看了题解,发现题解大多数都是逻辑不正确的,更有离谱的是数组范围都不加特判,数组访问越界但是可以ac的情况,数据太烂了,放个自以为正确的思路吧,发现之前自己提交的......
  • P1149 [NOIP2008 提高组] 火柴棒等式
    题目链接:本题比较重要的点在于判断加数的范围,即枚举的范围大小。由于题目已知\(n\leqslant24\),且用数字\(1\)拼成的数尽可能大。由于\(1111+1=1112\)已经用了\(25\)根小棒,已经超过了题目\(24\)根小棒的数据范围,所以上界为\(1111\)。#include<cstdio>inta[10]=......
  • 数学入门——均值不等式 学习笔记
    数学入门——均值不等式学习笔记简化形式若\(a,b>0\),则:\[\dfrac{2}{\dfrac{1}{a}+\dfrac{1}{b}}\le\sqrt[2]{ab}\le\dfrac{a+b}{2}\le\sqrt[2]{\dfrac{a^2+b^2}{2}}\]理解方式:https://www.bilibili.com/video/BV1Nf4y1G7xV基本形式若\(a,b>0\),则:\[\dfrac{n}{\dfrac{......
  • 【洛谷】 P1006 [NOIP2008提高组]传纸条
    题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排坐成一个 m 行 n 列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,......
  • C++ [NOIP2008 普及组] ISBN 号码
    文章目录一、题目描述[NOIP2008普及组]ISBN号码题目描述输入格式输出格式样例#1样例输入#1样例输出#1样例#2样例输入#2样例输出#2提示二、参考代码一、题目描述[NOIP2008普及组]ISBN号码题目描述每一本正式出版的图书都有一个ISBN号码与之对应,IS......
  • P1055 [NOIP2008 普及组] ISBN 号码
    P1055[NOIP2008普及组]ISBN号码[NOIP2008普及组]ISBN号码题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括\(9\)位数字、\(1\)位识别码和\(3\)位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号),最后一位是识别码,例如0-6......
  • 常用不等式题目解法
    问题:已知${ x^{2}+y^{2}-xy=3}$,求${x+y}$的最大值?解法1(万能k法):设${k=x+y}$,则${x=k-y}$,可知:$${\left(k-y\right)^{2}+y^{2}-\left(k-y\right)y=3 }$$化简:$${3y^{2}-3ky+\left(k^{2}-3\right)=0}$$这是已知条件,${y}$必定有解。所以根据一元二次方程根判......
  • lc2426 满足不等式的数对个数
    给定两个大小为n的数组nums1和nums2以及整数diff,统计满足以下条件的数对(i,j)的个数:0<=i<j<=n-1,并且nums1[i]-nums1[j]<=nums2[i]-nums2[j]+diff。2<=n<=1e5;-1e4<=nums1[i],nums2[i]<=1e4;-1e4<=diff<=1e4先对条件做下变形,将下标相同的移到同一侧,得到:nums1[i]-nums2[i]<=nums......
  • 组合数学相关恒(不)等式
    \(\texttt{First}\):组合数本身相关性质\[C_n^{m}=C_{n}^{n-m}\]\[C_n^m=\dfrac{n}{m}\timesC_{n-1}^{m-1}\]\[C_{n}^m=C_{n-1}^{m}+C_{n-1}^{m-1}\]杨辉三角。\[C_{n}^{m}=\dfrac{n-m+1}{m}\timesC_{n}^{m-1}\]展开即得,可以作为\(n\)确定,\(m\)不定的递推式......