幸运三角形
来源:互联网 发布:hit韩服数据 编辑:程序博客网 时间:2024/05/14 02:36
幸运三角形
时间限制:1000 ms | 内存限制:65535 KB
难度:3
- 描述
话说有这么一个图形,只有两种符号组成(‘+’或者‘-’),图形的最上层有n个符号,往下个数依次减一,形成倒置的金字塔形状,除第一层外(第一层为所有可能情况),每层形状都由上层决定,相邻的符号相同,则下层的符号为‘+’,反之,为‘-’;如下图所示(n = 3 时的两种情况):
如果图中的两种符号个数相同,那这个三角形就是幸运三角形,如上图中的图(2).
- 输入
- 有多组测试数据(少于20组)。
每行含一个整数n(0<n<20)。 - 输出
- 输出相应的幸运三角形个数。
- 样例输入
34
- 样例输出
46
/*分类:搜索 来源:NYOJ 幸运三角形思路:We are giants.create by Lee_SD on 2017/4/20*/#include<queue>#include<iostream>#include<algorithm>#include<cmath>#include<stack>#include<string.h>#include<stdio.h>using namespace std;int n,sum=0,a[25][25];void fun(int k,int p,int q){int x,y,t,i,j;if(k==n){if(p==q)sum++;return ;}for(t=0;t<2;t++){x=p,y=q,a[0][k]=t;t?x++:y++;for(i=1,j=k-1;j>-1;i++,j--){a[i][j]=a[i-1][j]^a[i-1][j+1];a[i][j]?x++:y++;}fun(k+1,x,y);}}int main(){while(cin>>n){sum=0;if(n*(n+1)/2%2==0)fun(0,0,0);cout<<sum<<endl;}}
0 0
- 幸运三角形
- 幸运三角形
- 幸运三角形
- 幸运三角形
- 幸运三角形
- 幸运三角形
- 幸运三角形
- NYOJ 491幸运三角形
- nyoj 491 幸运三角形
- NYOJ 491 幸运三角形
- NYOJ 幸运三角形
- NOJ 491 幸运三角形
- 幸运三角形(nyoj 491)
- NYOJ491-幸运三角形
- NYOJ-491 幸运三角形
- nyoj491幸运三角形
- nyoj--幸运三角形
- NYOJ491幸运三角形
- Spring教程--IOC(控制反转)详解
- 前端数据实时校验
- C#指针一些操作
- 实体类(VO,DO,DTO)的划分与图解
- Python爱好者之超级简单Hello World!
- 幸运三角形
- Windows下的bat原来可以为我们做很多
- centos安装字体
- JVM内存模型&内存溢出&垃圾回收
- 九点圆定理证明技巧
- 常用的几种水平垂直居中方式(按受用几率来写)
- sizeof和strlen的区别比较
- Android Webview加载外部html时选择加载本地的js,css等资源文件
- Opencv 学习笔记