티스토리 뷰

C나 Java로는 그대로 출력하는 것을 조금 생각해야 하는데, 파이썬이라 그런지 다른 언어에 비해 쉽게 풀 수 있었다.

일단 내가 Java로 풀었을 때의 코드이다.

 

비교 언어 )  Java8 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		
		while(scanner.hasNextLine()) {
			String typing = scanner.nextLine();
			
			if(typing.isEmpty()||typing.length()>100) {
				break;
			}
			else {
				System.out.println(typing);
			}
		}
	}
}

문제에서 '입력은 최대 100줄로 이루어져 있고, ... 빈 줄은 주어지지 않는다.' 등의 입력 조건이 있다.

 

 

그에 반해 Python으로 푼 백준 11718번은 어떨까?

 

 Python3 

while True:
    try:
        print(input())
    except EOFError:
        break

이렇게 짧은 코드가 전부이다. 이것이 파이썬의 장점인가... 놀랍다. 굉장히 짧은 코드.

어떤 문자열을 입출력하더라도 짧은 코드로 끝낼 수 있다.

 

이 코드로  백준 11718번, 11719번  모두 풀 수 있다. 

 

 try - except 문 예외처리는 파이썬 문법 공부할 때 정리를 해두었다.

>> [Python/Function & Grammer] - Python : 오류 예외처리 (try)

 

Python : 오류 예외처리 (try)

예외처리는 Java에서 try - catch 로 자주 사용해보았다. 과연 파이썬도 방법이 비슷할까? 일단, catch가 아니라는 것. 언어를 바꾸어 사용하면 헷갈릴 수 있으니 조심해야겠다. ▶ try - except 문 catch가

chae-developer.tistory.com

 

 

 

해당 문제 : https://www.acmicpc.net/problem/11718
 

11718번: 그대로 출력하기

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시

www.acmicpc.net

 

'Python > Algorithm' 카테고리의 다른 글

백준 11721 : 열 개씩 끊어 출력하기  (0) 2021.01.20
백준 11720 : 숫자의 합  (0) 2021.01.19
백준 11022 : Python 입출력(8)  (0) 2021.01.17
백준 11021 : Python 입출력(7)  (0) 2021.01.17
백준 10953 : Python 입출력(6)  (0) 2021.01.17
댓글