AIX 程序设计大赛---AIX正方形问题
2007-12-17 10:31
429 查看
AIX 程序设计大赛---AIX正方形问题
[b]作者:成晓旭
[/b]作为“算法及实现”栏目的“抛砖引玉”之作,将自己2年多前实现的一个算法放出来。有一年IBM出了这个Java程序设计竞赛题,当时,自己花晚上时间用Java实现了。
[问题描述]:
任意给定一个正方形,将正方形的各边做n等分,并将相应各点连接成水平或垂直的直线,如果从正方形的左下角(0,0)出发,沿各边线或连接线,自左向右或自下而上的方向,到达正方形的右上角(n,n),请用JAVA程序计算并输出所有可能的路径总数和具体线路.请提供相关JAVA源程序和n=2,3,4时的输出结果。输出结果按以下方式:
以n=1为例:
n = 1
Path1: (0,0) - (0,1) - (1,1)
Path2: (0,0) - (1,0) - (1,1)
Total = 2
[设计简介]:
共设计3个类:
AixPoint:正方形问题的低层处理类,抽象正方形问题的每个访问点信息;
AixSquare:正方形问题的核心处理类,抽象正方形算法处理过程;
AixContest:正方形问题的客户调用处理类,抽象正方形问题的应用层。
[算法源码]:
AixPoint源码:
package CXXSoft.Aix;
import java.awt.Point;
public class AixPoint extends Point
package CXXSoft.Aix;
import java.awt.Point;
import java.util.Stack;
import java.util.Vector;
import java.util.List;
import CXXSoft.Aix.AixPoint;
public class AixSquare
package CXXSoft.Aix;
import java.awt.Point;
import CXXSoft.Aix.AixSquare;
public class AixContest
...{
public static void main(String[] arg)
...{
System.out.println("AIX知识大赛初赛Java程序设计---AIX正方形问题");
AixSquare asProblem = new AixSquare();
String str="";
for(int i=1;i<=3;i++)
...{
asProblem.setProblemCondition(i,AixSquare.FIRST_MOVE_AHEAD);
asProblem.solveProblemNew();
str += asProblem + " ";
}
System.out.println(str);
System.out.println(" AIX正方形问题---运行结束......");
}
}
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1108610
[b]作者:成晓旭
[/b]作为“算法及实现”栏目的“抛砖引玉”之作,将自己2年多前实现的一个算法放出来。有一年IBM出了这个Java程序设计竞赛题,当时,自己花晚上时间用Java实现了。
[问题描述]:
任意给定一个正方形,将正方形的各边做n等分,并将相应各点连接成水平或垂直的直线,如果从正方形的左下角(0,0)出发,沿各边线或连接线,自左向右或自下而上的方向,到达正方形的右上角(n,n),请用JAVA程序计算并输出所有可能的路径总数和具体线路.请提供相关JAVA源程序和n=2,3,4时的输出结果。输出结果按以下方式:
以n=1为例:
n = 1
Path1: (0,0) - (0,1) - (1,1)
Path2: (0,0) - (1,0) - (1,1)
Total = 2
[设计简介]:
共设计3个类:
AixPoint:正方形问题的低层处理类,抽象正方形问题的每个访问点信息;
AixSquare:正方形问题的核心处理类,抽象正方形算法处理过程;
AixContest:正方形问题的客户调用处理类,抽象正方形问题的应用层。
[算法源码]:
AixPoint源码:
package CXXSoft.Aix;
import java.awt.Point;
public class AixPoint extends Point
package CXXSoft.Aix;
import java.awt.Point;
import java.util.Stack;
import java.util.Vector;
import java.util.List;
import CXXSoft.Aix.AixPoint;
public class AixSquare
package CXXSoft.Aix;
import java.awt.Point;
import CXXSoft.Aix.AixSquare;
public class AixContest
...{
public static void main(String[] arg)
...{
System.out.println("AIX知识大赛初赛Java程序设计---AIX正方形问题");
AixSquare asProblem = new AixSquare();
String str="";
for(int i=1;i<=3;i++)
...{
asProblem.setProblemCondition(i,AixSquare.FIRST_MOVE_AHEAD);
asProblem.solveProblemNew();
str += asProblem + " ";
}
System.out.println(str);
System.out.println(" AIX正方形问题---运行结束......");
}
}
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1108610
相关文章推荐
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛-AIX正方形问题算法及Java程序实现
- AIX 程序设计大赛-AIX正方形问题算法及Java程序实现(方案二)
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛-AIX正方形问题算法及Java程序实现(方案三)
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- AIX 程序设计大赛---AIX正方形问题
- 程序设计大赛--约瑟夫问题
- Unix课程设计实验四 编制模拟“五个哲学家”问题的程序(进程同步)