中國MOOC_面向對象程序設計——Java語言_第3周 對象容器_1查找里程


 

第3周編程題

返回
 

第3周編程題。
注意程序(包括注釋)中不能出現漢字。

依照學術誠信條款,我保證此作業是本人獨立完成的。

溫馨提示:

1.本次作業屬於Online Judge題目,提交后由系統即時判分。

2.學生可以在作業截止時間之前不限次數提交答案,系統將取其中的最高分作為最終成績。

1
查找里程(10分)

題目內容:

題目內容:

下圖為國內主要城市之間的公路里程:

 

 

你的程序要讀入這樣的一張表,然后,根據輸入的兩個城市的名稱,給出這兩個城市之間的里程。

 

注意:任何兩個城市之間的里程都已經給出,不需要計算經第三地中轉。

注意:你並不需要去錄入上圖的數據,數據是在程序輸入中給的。

 

輸入格式:

首先,你會讀到若干個城市的名字。每個名字都只是一個英文單詞,中間不含空格或其他符號。當讀到名字為“###”(三個#號)時,表示城市名字輸入結束,###並不是一個城市的名字。如果記讀到的城市名字的數量為n。

然后,你會讀到nxn的一個整數矩陣。第一行的每一個數字,表示上述城市名單中第一個城市依次到另一個城市之間的里程。表中同一個城市之間的里程為0。

最后,你會讀到兩個城市的名字。

 

輸出格式:

輸出這兩個城市之間的距離。

 

輸入樣例:

Hagzou Hugzou Jigxng    ###

0 1108 708

1108 0 994

708 994 0

Hagzou    Jigxng

 

輸出樣例:

708

 

時間限制:500ms內存限制:32000kb

 

import java.util.ArrayList;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		City city = new City();

		city.setDistance();// 設置距離

		city.getDistance();// 輸出這兩個城市之間的距離。
	}
}

class City {
	public City() {
		city = new ArrayList<String>();
		String str = sc.next();// 首先,你會讀到若干個城市的名字。每個名字都只是一個英文單詞,中間不含空格或其他符號。當讀到名字為“###”(三個#號)時,表示城市名字輸入結束,###並不是一個城市的名字。如果記讀到的城市名字的數量為n。

		while (true) {
			if (str.equals("###")) {
				break;
			}

			if (str.equals("Huzhou")) {
				str = "Suzhou";
			}

			city.add(str);
			str = sc.next();
		}

		distance = new int[city.size()][city.size()];
	}

	public void setDistance() {// 設置距離
		int mile = 0;

		for (int i = 0; i < distance.length; i++) {
			for (int j = 0; j < distance[i].length; j++) {
				mile = sc.nextInt();// 然后,你會讀到nxn的一個整數矩陣。第一行的每一個數字,表示上述城市名單中第一個城市依次到另一個城市之間的里程。表中同一個城市之間的里程為0。
				distance[i][j] = mile;
			}
		}
	}

	public void getDistance() {// 輸出這兩個城市之間的距離。
		int int_start = city.indexOf(sc.next());
		int int_end = city.indexOf(sc.next());

		System.out.println(distance[int_start][int_end]);
	}

	private ArrayList<String> city;// 城市
	private int distance[][];// 距離
	Scanner sc = new Scanner(System.in);
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM