< 백준 - 2750 >
수 정렬하기
문제 :
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력 :
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
출력 :
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
< 우여곡절 끝에 맞춘 내 코드 >
sys.stdin.readline( ) 을 사용하고 싶었지만, 실패해 포기하고 그냥 풀었다.
6번줄 까지는 입력을 받기 위한 코드다. 숫자들을 입력받아 numbers라는 리스트를 만들고,
8번줄부터 리스트 안에 들어 있는 숫자를 하나씩 빼내와 new_numbers라는 새로운 리스트를 만들어, 이 새 리스트를 sorted( ) 해준다.
그리고 10번, 11번 줄은 출력을 위한 코드다.
맞긴 맞았지만, 이 간단한 문제 푸는데 for문을 세 번이나 썼으니 내가 생각해도 지저분하다.
< sys.stdin.readline( ) 을 사용한 코드 >
sys.stdin.readlin( ) 사용에서 계속 막혀 디스 프로그래머스님의 블로그 글에서 코드를 베껴왔다.
내가 원래 작성한 코드의 길이는 233B인데 위 코드 길이는 181B이다. 훨씬 효율적인 것을 알 수 있다.
while 문을 사용한 4, 5번 줄이 흥미롭다.
sys.stdin.readline( )은 자료구조가 str이기 때문에 6번 줄에서 int 를 사용해 숫자형으로 바꿔줬다.
덧) 드디어 백준 랭킹 20000등 대에 진입했다. 29936위!
수 정렬하기
문제 :
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력 :
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
출력 :
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
< 우여곡절 끝에 맞춘 내 코드 >
sys.stdin.readline( ) 을 사용하고 싶었지만, 실패해 포기하고 그냥 풀었다.
1 2 3 4 5 6 7 8 9 10 11 | N = int(input()) numbers = [] new_numbers = [] for i in range(N): a = list(map(int, input().split())) numbers.append(a) for j in numbers: new_numbers.append(j[0]) output = sorted(new_numbers) for i in output: print(i) |
6번줄 까지는 입력을 받기 위한 코드다. 숫자들을 입력받아 numbers라는 리스트를 만들고,
8번줄부터 리스트 안에 들어 있는 숫자를 하나씩 빼내와 new_numbers라는 새로운 리스트를 만들어, 이 새 리스트를 sorted( ) 해준다.
그리고 10번, 11번 줄은 출력을 위한 코드다.
맞긴 맞았지만, 이 간단한 문제 푸는데 for문을 세 번이나 썼으니 내가 생각해도 지저분하다.
< sys.stdin.readline( ) 을 사용한 코드 >
sys.stdin.readlin( ) 사용에서 계속 막혀 디스 프로그래머스님의 블로그 글에서 코드를 베껴왔다.
1 2 3 4 5 6 7 8 9 | import sys n = int(sys.stdin.readline()) numbers = [] while(n > 0): n -= 1 numbers.append(int(sys.stdin.readline())) new_num = sorted(numbers) for i in new_num: print(i) |
내가 원래 작성한 코드의 길이는 233B인데 위 코드 길이는 181B이다. 훨씬 효율적인 것을 알 수 있다.
while 문을 사용한 4, 5번 줄이 흥미롭다.
sys.stdin.readline( )은 자료구조가 str이기 때문에 6번 줄에서 int 를 사용해 숫자형으로 바꿔줬다.
덧) 드디어 백준 랭킹 20000등 대에 진입했다. 29936위!
0 Comments
Post a Comment