题目1195:最长&最短文本

题目描述:

    输入多行字符串,请按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。

输入:

输入包括多行字符串,字符串的长度len,(1<=len<=1000)。

输出:

按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。

样例输入:
hello
she
sorry
he
样例输出:
he
hello
sorry
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;
import java.util.ArrayList;

class Main
{
	public static final boolean DEBUG = false;
	
	public static void main(String[] args) throws IOException 
	{
		BufferedReader cin;
		String s;
		
		if (DEBUG) {
			cin = new BufferedReader(new FileReader("d:\\OJ\\uva_in.txt"));
		} else {
			cin = new BufferedReader(new InputStreamReader(System.in));
		}
		
		ArrayList<String> al = new ArrayList<String>();
		int max = Integer.MIN_VALUE, min = Integer.MAX_VALUE;
		
		while ((s = cin.readLine()) != null) {
			int len = s.length();
			al.add(s);
			if (len > max) {
				max = len;
			}
			
			if (len < min) {
				min = len;
			}
		}
		
		for (String tmp : al) {
			int len = tmp.length();
			if (len == min) System.out.println(tmp);
		}
		
		for (String tmp : al) {
			int len = tmp.length();
			if (len == max) System.out.println(tmp);
		}
	}
}



你可能感兴趣的:(题目1195:最长&最短文本)