杨辉三角的变形-matlab-java
来源:互联网 发布:plc入门编程 编辑:程序博客网 时间:2024/06/06 03:37
% written by oneym
% 2013-12-21
y=2*x-1;
m=zeros(x,y);
m(1,1)=1;
m(2,1)=1;m(2,2)=1;m(2,3)=1;
for i=3:x
for j=1:y
if 1==j
m(i,j)=m(i-1,j);
end
if 2==j
m(i,j)=m(i-1,j)+m(i-1,j-1);
end
if j>2 & j<=i*2-1-2
m(i,j)=m(i-1,j)+m(i-1,j-1)+m(i-1,j-2);
end
if j>i*2-1-2
if 1==j-lens(m(i-1,:))
m(i,j)=m(i-1,j-1)+m(i-1,j-2);
end
if 2==j-lens(m(i-1,:))
m(i,j)=m(i-1,j-2);
end
end
end
end
huaTu(m)
end
function len=lens(m)
% written by oneym
% 2013-12-17
% m:一维矩阵,返回矩阵中非零的数值个数
[x,y]=size(m);
f=find(0==m(1,:));
[r,c]=size(f);
len=y-c;
end
function huaTu(m)
% written by oneym
% 2013-12-21
[s,z]=size(m);
hold on
for i=1:s
x=1:z;
plot(x,m(i,:),'Color',rand(1,3));
end
hold off
end
import java.util.Scanner;
//written by oneym
//2013-12-15
public class yangHSJ {
public yangHSJ(int x){
boolean count=true;
int[][] a=new int[x][2*x-1];
a[0][0]=1;
for(int i=1;i<x;i++){
for(int j=0;j<2*i+1;j++){
boolean flag=true;
if(j-1<=0){
flag=false;
a[i][j]=(int) (0==j?a[i-1][j]:a[i-1][j]+a[i-1][j-1]);
}
if(j>=a[i-1].length){
flag=false;
a[i][j]=(int) (0!=j-a[i-1].length?a[i-1][j-2]:1==i?a[i-1][j]:a[i-1][j-1]+a[i-1][j-2]);
}
if(flag){
a[i][j]=a[i-1][j]+a[i-1][j-1]+a[i-1][j-2];
}
}
}
for(int i=0;i<2*x-1;i++){
System.out.print(a[x-1][i]+"\t");
}
System.out.println();
for(int k=0;k<2*x-1;k++){
if(0==a[x-1][k]%2){
System.out.println(x+","+(k+1));
System.out.println(a[x-1][k]);
count=false;
break;
}
count=true;
}
if(count)
System.out.println(-1);
}
public static void main(String args[]){
Scanner reader=new Scanner(System.in);
int x=reader.nextInt();
new yangHSJ(x);
}
}
- 杨辉三角的变形-matlab-java
- 杨辉三角的变形
- 杨辉三角的变形
- 杨辉三角的变形
- 杨辉三角的变形
- 杨辉三角的变形
- 杨辉三角的变形
- 杨辉三角变形
- 英雄会-----杨辉三角-----杨辉三角的变形
- 庞果网之杨辉三角的变形
- HWOJ 杨辉三角的变形
- 【华为 OJ 】杨辉三角的变形
- 杨辉三角的变形【编程题】
- 庞果网---杨辉三角变形
- 变形的杨辉三角问题的一种解法
- pongo题解之杨辉三角的变形
- pongo题解之杨辉三角的变形C#
- 庞国网英雄会之杨辉三角的变形
- Linux常用命令
- Java Thread.join详解
- 牛人必修 Ant编译android工程 ,并Proguard代码混淆,v4混淆配置
- 《Linux操作系统下C语言编程入门》 - linux 进程
- lucene&solr cache在sort、facet等方面的应用解析
- 杨辉三角的变形-matlab-java
- C++:多维数组的动态分配(new)和释放(delete)
- 《设计模式》学习笔记——桥接模式
- 欢迎您在新浪博客安家
- link1104,1168
- C++头文件和源文件的关系
- 计算机原理虚拟实验之存储器操作软…
- java中如何扩大数组空间
- 手把手教你使用VSS