|
编程作业3-共线点
编写一个程序来识别给定点集中的直线。
每个程序应将输入文件的名称作为命令行参数,读取输入文件(格式如下所述),将发现的线段打印到标准输出(格式如下所述),并将发现的线段绘制到标准绘图中(格式如下所述)。以下是API
public class Brute {
public static void main(String[] args)
}
public class Fast {
public static void main(String[] args)
}
输入格式
从输入文件中读取点,格式如下:一个整数N,后跟N对整数(x, y),每个整数在0到32,767之间。以下是两个示例。
% more input6.txt % more input8.txt
6 8
19000 10000 10000 0
18000 10000 0 10000
32000 10000 3000 7000
21000 10000 7000 3000
1234 5678 20000 21000
14000 10000 3000 4000
14000 15000
6000 7000
输出格式
将程序发现的线段打印到标准输出,每行一个。将每个线段打印为其组成点的有序序列,用“ -> ”分隔。
- % java Brute input6.txt
- (14000, 10000) -> (18000, 10000) -> (19000, 10000) -> (21000, 10000)
- (14000, 10000) -> (18000, 10000) -> (19000, 10000) -> (32000, 10000)
- (14000, 10000) -> (18000, 10000) -> (21000, 10000) -> (32000, 10000)
- (14000, 10000) -> (19000, 10000) -> (21000, 10000) -> (32000, 10000)
- (18000, 10000) -> (19000, 10000) -> (21000, 10000) -> (32000, 10000)
- % java Brute input8.txt
- (10000, 0) -> (7000, 3000) -> (3000, 7000) -> (0, 10000)
- (3000, 4000) -> (6000, 7000) -> (14000, 15000) -> (20000, 21000)
- % java Fast input6.txt
- (14000, 10000) -> (18000, 10000) -> (19000, 10000) -> (21000, 10000) -> (32000, 10000)
- % java Fast input8.txt
- (10000, 0) -> (7000, 3000) -> (3000, 7000) -> (0, 10000)
- (3000, 4000) -> (6000, 7000) -> (14000, 15000) -> (20000, 21000)
Copy the Code |
|